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
No edit summary
(→‎Today's topics: Add notes about use of config.h / octave-config.h in Octave header files)
 
Line 24: Line 24:
**** MXE is about cross-compiling from Linux to Windows
**** MXE is about cross-compiling from Linux to Windows
**** MSYS2 is about building **on** Windows
**** MSYS2 is about building **on** Windows
** aside: don't bring back 32-bit binaries: MSYS2 is about to stop shipping that too.
** 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.
** 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?
** JWE discussed this but I didn't take minutes.
** <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 ==
227

edits