diff options
author | Cedric Gustin <cedric.gustin@gmail.com> | 2006-04-06 12:42:28 +0000 |
---|---|---|
committer | Cedric Gustin <gustin@src.gnome.org> | 2006-04-06 12:42:28 +0000 |
commit | 367228bc2218bcc71a628b3d4514d08deab6d4b4 (patch) | |
tree | 3d82d1b8bec709caf59302f2e4c6cd058e4be130 | |
parent | 5fc9d0f797da4f5377ffc3be77cf441ce9646f25 (diff) | |
download | glibmm-367228bc2218bcc71a628b3d4514d08deab6d4b4.tar.gz |
Embed the manifest file into executables in the case of the Debug target.
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.
-rw-r--r-- | ChangeLog | 15 | ||||
-rwxr-xr-x | MSVC_Net2003/examples/dispatcher/dispatcher.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/examples/dispatcher2/dispatcher2.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/examples/markup/markup.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/examples/options/options.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/examples/thread/thread.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/examples/thread_pool/thread_pool.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/gendef/gendef.vcproj | 2 | ||||
-rwxr-xr-x | MSVC_Net2003/glibmm/glibmm.vcproj | 10 | ||||
-rwxr-xr-x | MSVC_Net2003/tests/glibmm_value/glibmm_value.vcproj | 2 | ||||
-rw-r--r-- | README.win32 | 2 | ||||
-rw-r--r-- | build_shared/Makefile_build.am_fragment | 5 | ||||
-rw-r--r-- | glib/glibmm/object.h | 4 | ||||
-rw-r--r-- | glib/glibmm/objectbase.h | 4 | ||||
-rw-r--r-- | glib/glibmmconfig.h.in | 1 |
15 files changed, 36 insertions, 21 deletions
@@ -1,3 +1,18 @@ +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. + 2.10.0: 2006-02-25 Murray Cumming <murrayc@murrayc.com> diff --git a/MSVC_Net2003/examples/dispatcher/dispatcher.vcproj b/MSVC_Net2003/examples/dispatcher/dispatcher.vcproj index 8def9309..674a9acd 100755 --- a/MSVC_Net2003/examples/dispatcher/dispatcher.vcproj +++ b/MSVC_Net2003/examples/dispatcher/dispatcher.vcproj @@ -66,7 +66,7 @@ AdditionalDependencies="gthread-2.0.lib sigc-2.0d.lib" OutputFile="$(OutDir)/dispatcher.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/examples/dispatcher2/dispatcher2.vcproj b/MSVC_Net2003/examples/dispatcher2/dispatcher2.vcproj index 3f8a5ff5..bc9fff96 100755 --- a/MSVC_Net2003/examples/dispatcher2/dispatcher2.vcproj +++ b/MSVC_Net2003/examples/dispatcher2/dispatcher2.vcproj @@ -65,7 +65,7 @@ AdditionalDependencies="gthread-2.0.lib sigc-2.0d.lib" OutputFile="$(OutDir)/dispatcher2.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/examples/markup/markup.vcproj b/MSVC_Net2003/examples/markup/markup.vcproj index 4ad425d5..af9d2c39 100755 --- a/MSVC_Net2003/examples/markup/markup.vcproj +++ b/MSVC_Net2003/examples/markup/markup.vcproj @@ -65,7 +65,7 @@ AdditionalDependencies="glib-2.0.lib" OutputFile="$(OutDir)/markup.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/examples/options/options.vcproj b/MSVC_Net2003/examples/options/options.vcproj index 1d22c7e9..a360d8d2 100755 --- a/MSVC_Net2003/examples/options/options.vcproj +++ b/MSVC_Net2003/examples/options/options.vcproj @@ -66,7 +66,7 @@ AdditionalDependencies="gthread-2.0.lib sigc-2.0d.lib" OutputFile="$(OutDir)/options.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/examples/thread/thread.vcproj b/MSVC_Net2003/examples/thread/thread.vcproj index dfb85676..77197ab6 100755 --- a/MSVC_Net2003/examples/thread/thread.vcproj +++ b/MSVC_Net2003/examples/thread/thread.vcproj @@ -65,7 +65,7 @@ AdditionalDependencies="gthread-2.0.lib sigc-2.0d.lib" OutputFile="$(OutDir)/thread.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/examples/thread_pool/thread_pool.vcproj b/MSVC_Net2003/examples/thread_pool/thread_pool.vcproj index 74c18bd7..320d6f54 100755 --- a/MSVC_Net2003/examples/thread_pool/thread_pool.vcproj +++ b/MSVC_Net2003/examples/thread_pool/thread_pool.vcproj @@ -65,7 +65,7 @@ AdditionalDependencies="gthread-2.0.lib sigc-2.0d.lib" OutputFile="$(OutDir)/thread_pool.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/gendef/gendef.vcproj b/MSVC_Net2003/gendef/gendef.vcproj index 6a0aa64f..fb05b485 100755 --- a/MSVC_Net2003/gendef/gendef.vcproj +++ b/MSVC_Net2003/gendef/gendef.vcproj @@ -62,7 +62,7 @@ Name="VCLinkerTool" OutputFile="$(OutDir)/gendef.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/MSVC_Net2003/glibmm/glibmm.vcproj b/MSVC_Net2003/glibmm/glibmm.vcproj index ae7d3596..04128f46 100755 --- a/MSVC_Net2003/glibmm/glibmm.vcproj +++ b/MSVC_Net2003/glibmm/glibmm.vcproj @@ -69,7 +69,7 @@ Name="VCLinkerTool" AdditionalDependencies="glib-2.0.lib gobject-2.0.lib gmodule-2.0.lib sigc-2.0d.lib" OutputFile="$(OutDir)/$(ProjectName)d.dll" - GenerateManifest="false" + GenerateManifest="true" ModuleDefinitionFile="$(ConfigurationName)\$(InputName).def" GenerateDebugInformation="true" /> @@ -302,10 +302,6 @@ > </File> <File - RelativePath="..\..\glib\glibmm\sarray.cc" - > - </File> - <File RelativePath="..\..\glib\glibmm\shell.cc" > </File> @@ -524,10 +520,6 @@ > </File> <File - RelativePath="..\..\glib\glibmm\sarray.h" - > - </File> - <File RelativePath="..\..\glib\glibmm\shell.h" > </File> diff --git a/MSVC_Net2003/tests/glibmm_value/glibmm_value.vcproj b/MSVC_Net2003/tests/glibmm_value/glibmm_value.vcproj index 5b53fa0e..8bd70c97 100755 --- a/MSVC_Net2003/tests/glibmm_value/glibmm_value.vcproj +++ b/MSVC_Net2003/tests/glibmm_value/glibmm_value.vcproj @@ -65,7 +65,7 @@ Name="VCLinkerTool" OutputFile="$(OutDir)/glibmm_value.exe" LinkIncremental="2" - GenerateManifest="false" + GenerateManifest="true" GenerateDebugInformation="true" ProgramDatabaseFile="$(OutDir)/$(TargetName).pdb" SubSystem="1" diff --git a/README.win32 b/README.win32 index 4cb1128a..97221761 100644 --- a/README.win32 +++ b/README.win32 @@ -1,7 +1,7 @@ Building glibmm on Win32 =========================== -Currently, only both mingw (native win32) gcc compiler and MS Visual +Currently, both the mingw (native win32) gcc compiler and MS Visual Studio 2005 are supported. glibmm can be built with mingw32-gcc using the gnu autotools (automake, autoconf, libtool). As explicitly stated in the gtk+ for win32 distribution (http://www.gimp.org/win32/), the diff --git a/build_shared/Makefile_build.am_fragment b/build_shared/Makefile_build.am_fragment index 2ce34b56..95a39412 100644 --- a/build_shared/Makefile_build.am_fragment +++ b/build_shared/Makefile_build.am_fragment @@ -29,9 +29,12 @@ files_all_win32_cc = $(files_built_win32_cc) # libraries at link time to resolve symbols (remember a dll is like an # executable). if PLATFORM_WIN32 +extra_win32_defines = \ + -D$(shell echo $(sublib_name) | tr [:lower:] [:upper:])_BUILD no_undefined = -no-undefined -Wl,--export-all-symbols win32_dlls_extra_libs = $(sublib_win32_dlls_libs) else +extra_win32_defines = no_undefined = win32_dlls_extra_libs = endif @@ -41,7 +44,7 @@ common_ldflags = -version-info $(LIBGLIBMM_SO_VERSION) $(no_undefined) all_includes = -I$(top_builddir)/glib -I$(top_srcdir)/glib \ $(sublib_cflags) $(GTHREAD_CFLAGS) -extra_defines = -DG_LOG_DOMAIN=\"$(sublib_name)\" \ +extra_defines = -DG_LOG_DOMAIN=\"$(sublib_name)\" $(extra_win32_defines) \ $(DISABLE_DEPRECATED_CFLAGS) $(DISABLE_DEPRECATED_API_CFLAGS) dist_sources = $(files_built_all_cc) $(files_extra_all_cc) \ diff --git a/glib/glibmm/object.h b/glib/glibmm/object.h index 0335e92f..a1cc756f 100644 --- a/glib/glibmm/object.h +++ b/glib/glibmm/object.h @@ -28,6 +28,8 @@ #include <glibmm/containerhandle_shared.h> //Because its specializations may be here. #include <glibmm/value.h> +#include <glibmmconfig.h> + #ifndef DOXYGEN_SHOULD_SKIP_THIS extern "C" { @@ -84,7 +86,7 @@ private: #endif /* DOXYGEN_SHOULD_SKIP_THIS */ -class Object : virtual public ObjectBase +class GLIBMM_API Object : virtual public ObjectBase { public: #ifndef DOXYGEN_SHOULD_SKIP_THIS diff --git a/glib/glibmm/objectbase.h b/glib/glibmm/objectbase.h index 137a7159..2b152fbb 100644 --- a/glib/glibmm/objectbase.h +++ b/glib/glibmm/objectbase.h @@ -28,6 +28,8 @@ #include <glibmmconfig.h> #include <glibmm/debug.h> +#include <glibmmconfig.h> + GLIBMM_USING_STD(type_info) #ifndef DOXYGEN_SHOULD_SKIP_THIS @@ -50,7 +52,7 @@ class GSigConnectionNode; * constructor runs before all others, either implicitly or explicitly. Each of * the available constructors initializes custom_type_name_ in a different way. */ -class ObjectBase : virtual public sigc::trackable +class GLIBMM_API ObjectBase : virtual public sigc::trackable { protected: /** This default constructor is called implicitly from the constructor of user-derived diff --git a/glib/glibmmconfig.h.in b/glib/glibmmconfig.h.in index f4deb5c7..d3081cae 100644 --- a/glib/glibmmconfig.h.in +++ b/glib/glibmmconfig.h.in @@ -17,6 +17,7 @@ #define GLIBMM_CONFIGURE #elif defined(__MINGW32__) #define GLIBMM_WIN32 +#define GLIBMM_DLL #define GLIBMM_CONFIGURE #else //AIX clR compiler complains about this even though it doesn't get this far: |