Online Developer Meeting (2024-05-28): Difference between revisions

→‎Today's topics: Add notes about use of config.h / octave-config.h in Octave header files
(→‎Today's topics: Add notes about use of config.h / octave-config.h in Octave header files)
 
(3 intermediate revisions by one other user not shown)
Line 22: Line 22:
*** but it is perhaps too fast-moving for us, as they do rolling releases
*** but it is perhaps too fast-moving for us, as they do rolling releases
*** perhaps does not give us a .exe-based installer.
*** perhaps does not give us a .exe-based installer.
** aside: don't bring back 32-bit binaries: MSYS2 is about to stop shipping that too.
**** MXE is about cross-compiling from Linux to Windows
**** MSYS2 is about building **on** Windows
** aside: don't bring back 32-bit binaries even if MSYS2 is about to drop support for that platform.
* OctConf
* OctConf
** Rik to continue thinking about San Fran for now.
* Use of config.h / octave-config.h in Octave header files.  What symbols belong in octave-config.h?
* Use of config.h / octave-config.h in Octave header files.  What symbols belong in octave-config.h?
** <code>config.h</code> should never be included in header files. The same holds for not-installed header files (like for libgui).
** <code>octave-config.h</code> should preferably '''not''' define platform-specific macros. Only ever define macros for features that can be enabled or disabled by configure switches.
** Design classes preferably such that the class definition doesn't differ depending on the target platform or Octave configuration. I.e., move conditional feature selection from the header files to the files that implement the member functions.
:: That means there should be no member functions or properties that are guarded by pre-processor macros in header files (independent on whether they are installed) if possible.


== Previous topics ==
== Previous topics ==