summaryrefslogtreecommitdiff
path: root/glib/glibmmconfig.h.in
Commit message (Collapse)AuthorAgeFilesLines
* g[io|lib]mmconfig.h.*: Don't dllimport on MinGWChun-wei Fan2021-03-091-1/+3
| | | | | | | This will fix warnings when building items using glibmm and giomm with MinGW/GCC. Please see: https://gitlab.gnome.org/GNOME/gtkmm/-/issues/90
* glib/glibmmconfig.h.[in|meson]: Clean up MSVC bitsChun-wei Fan2020-03-101-23/+0
| | | | | | | | | | | From https://gitlab.gnome.org/GNOME/glibmm/-/merge_requests/29#note_734668, it was noted by Kjell that we will always have thread_local, so there is really no GLIBMM_CAN_USE_THREAD_LOCAL in the code, so we can drop that. Also drop the Visual Studio 2013 compatibility bits, since we need Visual Studio 2017 to build glibmm master (C++17 branch), so they won't be relevant.
* glibmm: Update glibmmconfig.h.[in|meson] for MSVCChun-wei Fan2020-03-091-0/+11
| | | | | | | | | | | Visual Studio 2015 or later has thread_local, so make sure that it is enabled. Also update for Visual Studio 2017+ as the compiler does allow static members to be initialized inline to std::string::npos (GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS), but use a work around for pre-Visual Studio 2015 so that we do not get a linker error as GLIBMM_HAVE_ALLOWS_STATIC_INLINE_NPOS is not supported.
* build: Do not use gendef.exe for glibmmChun-wei Fan2020-03-071-8/+5
| | | | | | | | | | | Clean up the build files a bit and update the glibmmconfig.h.[in|meson] so that we use __declspec(dllexport) when GLIBMM_BUILD is defined (i.e. during the build of glibmm) on Visual Studio. Also, for the meson builds, disable warnings 4251 and 4275 as they all relate to building DLLs regarding symbol export, which is harmless as we know clearly that we are indeed building DLLs in our case, and we have already set GLIBMM_API appropriately
* glibmmconfig.h.in: Remove unused configuration constantsKjell Ahlstedt2019-01-041-38/+0
| | | | | | | | | | | | | | | | | | | | | These configuration variables have been removed: GLIBMM_HAVE_C_STD_TIME_T_IS_NOT_INT32 GLIBMM_MEMBER_FUNCTIONS_MEMBER_TEMPLATES GLIBMM_CAN_USE_NAMESPACES_INSIDE_EXTERNC GLIBMM_CAN_USE_THREAD_LOCAL GLIBMM_HAVE_NAMESPACE_STD GLIBMM_COMPILER_SUN_FORTE GLIBMM_EXCEPTIONS_ENABLED GLIBMM_PROPERTIES_ENABLED GLIBMM_VFUNCS_ENABLED GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED and this preprocessor macro: GLIBMM_USING_STD(Symbol) The corresponding M4 macros in build/ and their calls in configure.ac have also been removed. Fixes #22
* Gio: Exclude DesktopAppInfo from wrap_init.cc on MacOSKjell Ahlstedt2017-08-151-0/+3
| | | | | | | Modify the conditional inclusion of desktopappinfo.h in giomm.h and wrap_init.cc. It shall not be included when running under MacOS. This should have been fixed by commit dd671f29ff9a005776ebd9e7cf20fdc5e44c14b8. Bug 781947
* glibmmconfig.h.in: Fix Visual Studio 2013 buildsChun-wei Fan2016-01-201-1/+14
| | | | | | | | | | | The thread_local keyword is only supported natively on Visual Studio 2015, so we need to use the Microsoft-specific extension __declspec(thread) for supporting thread_local in Visual Studio 2013 builds. Also re-organize the Visual Studio 2013-specific parts a bit so that it is clearer to people. https://bugzilla.gnome.org/show_bug.cgi?id=760612
* glib/glibmmconfig.h: Allow Build on Visual Studio 2013Chun-wei Fan2015-09-091-0/+5
| | | | | | | | | | | | | Visual Studio 2013 supports enough of C++-11 to support the build of glibmm, except that it does not support noexcept (which is something that Visual Studio 2015 supports). Define noexcept as _NOEXCEPT on Visual Studio 2013, so that one can build glibmm on it. Note that since later Visual Studio versions do not allow one to define known keywords like noexcet as macros, we need to define _ALLOW_KEYWORD_MACROS to workaround this limitation. https://bugzilla.gnome.org/show_bug.cgi?id=753271
* Add missing GLIBMM_VFUNCS_ENABLED to avoid breaking existing code.Murray Cumming2010-06-011-1/+4
| | | | * glib/glibmmconfig.h.in: Added missing GLIBMM_VFUNCS_ENABLED.
* Remove the reduced API options and code, as discussed on mailing list.Murray Cumming2010-05-311-6/+3
| | | | | | | | | * configure.ac: Removed the --enable-api-exceptions, --enable-api-properties, --enable-api-vfuncs and --enable-api-default-signal-handlers options. * build/reduced.m4: Removed. * tools/m4/*.m4: * tools/pm/Output.pm: Remove any use of ifdefs and auto_ptr for reduced API. * *.[hg|ccg|h|cc]: Remove the idefed code.
* Update MSVC projects for 2.24Armin Burgmeier2010-04-021-0/+1
|
* Use mm-common macro for --disable-deprecated-apiDaniel Elstner2009-08-211-0/+3
| | | | | | | | | | | * configure.ac: Replace GLIBMM_ARG_ENABLE_API_DEPRECATED() with the new MM_ARG_DISABLE_DEPRECATED_API() macro from mm-common. (MM_PREREQ): Raise requirement to mm-common 0.6. * build/reduced.m4 (GLIBMM_ARG_ENABLE_API_DEPRECATED): Remove obsolete macro definition. * glib/glibmmconfig.h.in (GLIBMM_DISABLE_DEPRECATED): Copy #undef statement from config.h.in template. * gio/giommconfig.h.in (GIOMM_DISABLE_DEPRECATED): ditto.
* Define GLIBMM_USING_STD() as dummy no-opDaniel Elstner2009-08-161-0/+4
| | | | | | * glib/glibmmconfig.h.in (GLIBMM_USING_STD): Resurrect macro for backwards compatibility, but unconditionally define it to the empty expansion.
* Clean up g{lib,io}mmconfig.h.in templatesDaniel Elstner2009-08-161-29/+69
| | | | | | | * glib/glibmmconfig.h.in: Rewrite, copying large chunks from the autoheader-generated config.h.in template. * gio/giommconfig.h.in: Remove everything that belongs to glibmm and include glibmmconfig.h.
* Get rid of all uses of GLIBMM_USING_STD()Daniel Elstner2009-08-161-54/+48
| | | | | | | | | | * glib/src/*.{ccg,hg}: Remove all uses of GLIBMM_USING_STD(). We definitely do not need this anymore, and probably never did. We never covered all symbols from namespace std anyway and never got any complaint about it. Also, be careful to always include the glibmmconfig.h header when it is needed. * glib/glibmm/*.{cc,h}: ditto. * glib/glibmmconfig.h.in: Clean up and re-indent.
* Build static libraries correctly under Windows/MinGWAlexander Shaduri2009-05-311-1/+6
| | | | | | | | | | | * configure.ac: Define GLIBMM_STATIC_LIB and GIOMM_STATIC_LIB when --enable-static is specified. * gio/giommconfig.h.in: Add GIOMM_STATIC_LIB and don't define GIOMM_DLL when using MinGW unless GIOMM_STATIC_LIB is defined. * glib/glibmmconfig.h.in: Add GLIBMM_STATIC_LIB and don't define GLIBMM_DLL when using MinGW unless GLIBMM_STATIC_LIB is defined. Signed-off-by: Armin Burgmeier <armin@arbur.net>
* Added a test for the case that time_t is equivalent to guint32, as seemsMurray Cumming2007-10-221-0/+2
| | | | | | | | | | | | | | | | | | | 2007-10-22 Murray Cumming <murrayc@murrayc.com> * Merged this change from 2007-03-03 from the glibmm-2-12 branch, which was missing from this branch: * configure.in: * glib/glibmmconfig.h.in: * glib/src/date.ccg: * glib/src/date.hg: * scripts/Makefile.am: * scripts/c_std.m4: Added a test for the case that time_t is equivalent to guint32, as seems to be the case on NetBSD-4.99.6/amd64, so we can ifdef-out the (deprecated, anyway) Glib::Date::set_time(GTime) method when necessary, because GTime is also equivalent to guint32. Bug #386990. svn path=/trunk/; revision=456
* New file, defining M4 utility macros for feature testing. These macros areDaniel Elstner2007-08-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | * scripts/dk-feature.m4: New file, defining M4 utility macros for feature testing. These macros are part of my personal autoconf library and are not specific to glibmm, as indicated by the "DK_" namespace prefix. * configure.in (AC_INIT): Switch to the non-deprecated usage of AC_INIT() by passing project name and version number as arguments. This is necessary to define a couple of auxiliary macros. (AC_PREREQ): Bump Autoconf version requirement to 2.58. (AC_CONFIG_SRCDIR): Point to project-specific source file. (AC_CONFIG_MACRO_DIR): Declare scripts/ as M4 directory. (AM_INIT_AUTOMAKE): Switch to non-deprecated usage. (AC_CHECK_SIZEOF): Use to determine the size of wchar_t. (DK_CHECK_FEATURE): Use new feature test macro to check for support of wide-character streams. * config.h.in (SIZEOF_WCHAR_T): Add #undef template. * glib/glibmmconfig.h.in (GLIBMM_HAVE_WIDE_STREAM): Likewise. svn path=/trunk/; revision=431
* For win32, define GLIBMM_ARG_ENABLE_API_DEFAULT_SIGNAL_HANDLERS to 1,Murray Cumming2006-09-261-1/+1
| | | | | | | | | | | | | | 2006-09-26 Murray Cumming <murrayc@murrayc.com> * glib/glibmmconfig.h.in: For win32, define GLIBMM_ARG_ENABLE_API_DEFAULT_SIGNAL_HANDLERS to 1, instead of just defining it to nothing. * scripts/reduced.m4: In the AC_ARG_ENABLE() to define (or not) GLIBMM_ARG_ENABLE_API_DEFAULT_SIGNAL_HANDLERS, use api-default-signal-handlers as the first parameter instead of api-exceptions (a copy/paste error), though it does not seem to make any difference. Bug #357830.
* Added a --enable-api-default-signal-handlers option. This definesMurray Cumming2006-07-191-0/+2
| | | | | | | | | | | | | | 2006-04-25 Murray Cumming <murrayc@murrayc.com> * configure.in: * glib/glibmmconfig.h.in: * scripts/reduced.m4: Added a --enable-api-default-signal-handlers option. This defines GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED, which is used to #ifdef default signal handlers. This saves on library code size (less code and API symbols) and application code size and loading time (less virtual methods, which must be imported and resolved at load time) and per-object memory size (smaller object sizes because of less virtual methods.) * tools/m4/class_interface.m4: * tools/m4/class_shared.m4: Put default signal handler code in #ifdefs.
* Merged changes from glibmm-2-10 branch.Murray Cumming2006-05-121-3/+6
|
* Embed the manifest file into executables in the case of the Debug target.Cedric Gustin2006-04-061-0/+1
| | | | | | | | | | | | | | | | | 2006-04-06 Cedric Gustin <cedric.gustin@gmail.com> * MSVC_Net2003/*.vcproj: Embed the manifest file into executables in the case of the Debug target. * README.win32: Fixed a few typos. * build_shared/Makefile_build.am_fragment: Add -DGLIBMM_BUILD to the extra_defines compiler flags (switch between dllexport/dllimport on win32). * glib/glibmmconfig.h.in: Define GLIBMM_DLL when building with mingw32/cygwin. This makes the GLIBMM_API tag (and GTKMM_API for gtkmm) active with these two platforms, as required by bug #309030. * glib/glibmm/object.h, glib/glibmm/objectbase.h : Tag the Object and ObjectBase classes with GLIBMM_API to make Visual Studio happy.
* Merge in changes from glibmm 2.8 branch. These are documentation and build ↵Murray Cumming2006-03-081-1/+0
| | | | fixes, allowed during the hard code freeze.
* Added MSVC_Net2003 directory. Added mkfifo #define (for mingw32). AddedCedric Gustin2005-01-241-27/+32
| | | | | | | | | | | | | | | | | 2005-01-24 Cedric Gustin <cedric.gustin@swing.be> * Makefile.am, configure.in: Added MSVC_Net2003 directory. * config.h.in: Added mkfifo #define (for mingw32). * glib/glibmmconfig.h.in: Added new #define's to MSVC section. * examples/iochannel_stream/Makefile.am: Do not build on win32 with mingw32 (mkfifo not available). * scripts/cxx_std.m4: Fixed typo in AC_DEFINE macros. * build_shared/Makefile_build.am_fragment: Removed $(sublib_name)_COMPILATION variable (is useless now on cygwin/mingw as all symbols are dll exported). * MSVC_Net2003/*: Initial commit imported from glibmm-2-4 branch. * MSVC_Net2003/glibmm/Makefile.am: Rewrote rule for local copy of glibmmconfig.h (required for 'make distcheck').
* Added new compiler tests to see whether extern C functions are put in theMurray Cumming2005-01-211-0/+1
| | | | | | | | | | | | | | | | | 2005-01-21 Murray Cumming <murrayc@murrayc.com> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added new compiler tests to see whether extern C functions are put in the global namespace, even when we use extern C inside a namespace declaration. The AIX xlC compiler does this, but allows us to redeclare the namespace inside the extern C block. * glib/glibmm/property.h: Use the new #ifdef GLIBMM_MUST_REDECLARE_NAMESPACES_INSIDE_EXTERNC and redeclare the namespace when necessary. * examples/thread/dispatcher.cc, dispatcher2.cc: Use sigc::bind<1> instead of just sigc::bind<> because the AIX xlC compiler needs the extra hint. However, the linker then fails, so the use of sigc::bind is ifdefed out for _AIX. See the comments in the code
* Added new compiler tests. 1. To see whether it allows use of non extern CMurray Cumming2005-01-211-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-21 Murray Cumming <murrayc@localhost.localdomain> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added new compiler tests. 1. To see whether it allows use of non extern C functions as extern C callbacks, because the Tru64 compiler does not allow this, when using strict_ansi. We do not actually use this yet. 2. To see whether it allows us to define a template that uses an undefined type, even if we do not use it before defining the type. Tru64 does not allow this. That's probably correct. * glib/glibmm/container.h: #ifdef out a dynamic_cast that Tru64 does not allow, and which I can not think of a better place to put. See the comment in the code. * glib/glibmm/containerhandler_helpers.h: When the compiler does not alllow the GObject and GtkObject (dynamic_cast of) specializations here, then put them in glib/glibmm/object.h and gtkmm/gtk/src/object.hg instead.- needed by Tru64 compiler. * glib/glibmm/value.h, value_custom.[h|cc]: Conditionally moved the RefPtr Value specialization into object.h, as above. * glib/src/ optiongroup.ccg, spawn.ccg, thread.ccg: Make C callacks separate extern C. * glib/src/optiongroup.ccg: Do not use the StringArrayHandle, because the Tru64 compiler has problems with it - see comments in code. * glib/src/optionentry.hg: Remove the include of value.h, because it is not used and it causes a Tru64 compile error in optioncontext.cc because its templates are included before the types that the template uses. 2005-01-19 Murray Cumming <murrayc@murrayc.com> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added a compiler test, because the IRIX MipsPro compiler does not allow the inline initialization of ustring::npos. * glib/glibmm/ustring.[h|cc]: When the compiler does not support the inline initialization of npos, initialize it in the .cc file. Declare partial specializations of the SequenceString inner class inside the class - needed by IRIX MipsPro compiler.
* Temporarily reverted some stuff. I will recommit some of it.Murray Cumming2005-01-211-4/+1
|
* I mean Tru64, not MipsProMurray Cumming2005-01-201-1/+2
|
* Added a compiler test, to see whether it allows use of non extern CMurray Cumming2005-01-201-0/+1
| | | | | | | | | | | | | 2005-01-20 Murray Cumming <murrayc@murrayc.com> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added a compiler test, to see whether it allows use of non extern C functions as extern C callbacks, because the IRIX MipsPro compiler does not allow this, but we can not completely fix that without changing ABI, which we can not do on the existing platforms. * glib/src/thread.[hg|ccg]: On (new) platforms that do not allow non-exern-C C callbacks, store the destruction callback in a base class and call it from an intermediate extern-C callback.
* Make C callacks separate extern C functions instead of static memberMurray Cumming2005-01-201-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 2005-01-20 Murray Cumming <murrayc@murrayc.com> * glib/src/iochannel.[hg|ccg], markup.[hg|ccg], optiongroup.ccg, spawn.ccg, thread.ccg: Make C callacks separate extern C functions instead of static member functions, to satisfy the IRIX MipsPro compiler. Unfortunately this means that we export some private API. * glib/src/optionentry.hg: Remove the include of value.h, because it is not used and it causes a MipsPro compile error in optioncontext.cc because its templates are included before the types that the template uses. * glib/src/optiongroup.ccg: Do not use the StringArrayHandle, because the MipsPro compiler has problems with it - see comments in code. * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added a compiler test, because the IRIX MipsPro compiler does not allow us to define a template that uses an undefined type, even if we do not use it before defining the type. That's probably correct. * glib/glibmm/containerhandler_helpers.h: When the compiler does not alllow the GObject and GtkObject (dynamic_cast of) specializations here, then put them in glib/glibmm/object.h and gtkmm/gtk/src/object.hg instead.- needed by MipsPro (IRIX) compiler..
* Added a compiler test, because the IRIX MipsPro compiler does not allowMurray Cumming2005-01-191-0/+2
| | | | | | | | | | | | 2005-01-19 Murray Cumming <murrayc@murrayc.com> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added a compiler test, because the IRIX MipsPro compiler does not allow the inline initialization of ustring::npos. * glib/glibmm/ustring.[h|cc]: When the compiler does not support the inline initialization of npos, initialize it in the .cc file. Declare partial specializatoins of the SequenceString inner class inside the class - needed by MipsPro (IRIX) compiler..
* Added CAN_DISAMBIGUATE_CONST_TEMPLATE_SPECIALIZATIONS m4 macro to use inMurray Cumming2004-03-131-0/+1
| | | | | | | | | | 2004-03-14 Murray Cumming <murrayc@murrayc.com> * scripts/cxx.m4: Added CAN_DISAMBIGUATE_CONST_TEMPLATE_SPECIALIZATIONS m4 macro to use in configure.in, to check for the SUN Forte problem - see the comments in cxx.m4. * scripts/sun.m4: Moved some brackets around to make the define actually work.
* Added sun.m4, copied from libsigc++-1.2/scripts and modified, so we canMurray Cumming2004-03-111-0/+2
| | | | | | | | | | 2004-03-11 Murray Cumming <murrayc@murrayc.com> * scripts/: Added sun.m4, copied from libsigc++-1.2/scripts and modified, so we can detect the SUN Forte compiler. * configure.in: Used the m4 macro. * glibmm/glibmm-config.h: Undef the GLIBMM_COMPILER_SUN_FORTE macro so that it will be defined if configure sets it.
* GTKMM_ m4 tests and #defines are now prefixed with GLIBMM_Murray Cumming2003-01-221-22/+22
| | | | | | 2003-01-22 Murray Cumming <murrayc@usa.net> * GTKMM_ m4 tests and #defines are now prefixed with GLIBMM_
* Use GLIBMM_* instead of GTKMM_* to avoid config.h clashes with gtkmm 2.4.Murray Cumming2003-01-211-3/+3
| | | | | | | | 2003-01-21 Murray Cumming <murrayc@usa.net> * configure.in: Use GLIBMM_* instead of GTKMM_* to avoid config.h clashes with gtkmm 2.4. * glib/glibmm-2.4.pc.in: Correct cflags - report 2.4 instead of 2.0.
* Initial revisionMurray Cumming2003-01-071-0/+71