Commit Graph

106 Commits

Author SHA1 Message Date
Chun-wei Fan
4ba56f3653 Bug 688681: Stop using .def files in Visual Studio builds
Since we are now starting to use __declspec (dllexport) to export the
public functions during the build of the GLib DLLs (i.e. to generate the
.lib files), we don't want to generate the .def files from the .symbols
files as we did before for a long time.

This removes from the projects the custom build steps to generate the
various .def files

This will also update the pre-configured config.h(.win32.in) to define
_GLIB_EXTERN appropriately as __declspec (dllexport), as well as making its
entries reflect config.h.in more closely.
2013-01-15 15:23:05 +08:00
Chun-wei Fan
0b2919a93a Update Visual C++ property sheets
The last commit (Add a preconfigured gio/gnetworking.h for Windows) has to
be split into two as git am does not like a patch that deals with files
that have different line feeds.

This updates the property sheets to use the pre-configured
gio/gnetworking.h during the build process.

https://bugzilla.gnome.org/show_bug.cgi?id=690163
2012-12-15 00:28:30 +08:00
Chun-wei Fan
c5b9a47fac Visual C++ 2010 projects: Prepare support for VS2012
Add the PlatformToolset tag to the project configs so that we can use add a
simple script later to the autotools files to copy the projects and change
the value (v100 -> v110) of that tag (and other simple changes) in order
that we can quickly provide and maintain support for Visual Studio 2012
with minimal effort.

Note that at the moment GLib does not yet support the API/SDK requirements
for Windows 8 Modern UI (formerly known as Metro), but this paves the very
initial step.
2012-11-05 12:31:44 +08:00
Chun-wei Fan
03658b1d12 Visual C++ property sheet updates
Make up for the missed GIO headers that need to be installed.
2012-09-26 15:42:53 +08:00
Chun-wei Fan
5328f760ee Update gspawn-win*helper* Visual C++ projects
Add GLIB_COMPILATION to the preprocessor definitions to fix the build.
2012-08-30 17:14:13 +08:00
Chun-wei Fan
599d1a430e msvc_recommended_pragmas.h: Re-enable C4819 warnings
Apparently the C4819 warnings appear due to a bug on Visual C++ on DBCS
locales, so re-enable this.

Add a note in the Visual C++ Readme.txt's regarding this.
2012-06-20 10:19:14 +08:00
Chun-wei Fan
874355de53 Fix GIO/GObject Visual C++ projects
-Make up for the missed DLL_EXPORT-it's actually needed for all GLib DLL
 builds, omitting this caused problems to surface due to recent works to
 make GDBus work on Windows.
-Also use the FFI_BULIDING macro for GObject builds as the suggessted
 workaround for using static LibFFI builds (as we do now)-please see
 ffi.h(.in). This will fix the build of GObject against LibFFI 3.0.11,
 but it is probable that this will change at some point for LibFFI.
2012-05-02 11:10:23 +08:00
Chun-wei Fan
810a296d42 Visual C++ projects: Clean/fix up
Clean/fix up the Preprocessor Definitions for the various projects, where
we purge out the unneeded macros and add _DEBUG to the Debug builds of
various projects that somehow lacked this.

This will also fix the GIO build under Visual C++ 2008, as the _DEBUG macro
in the release builds will cause a debug entry to appear in its manifest
file during the build, which will cause GIO-using applications to fail
to run on systems not running Visual C++/Studio 2008 due to its embedding
of a badly-generated manifest file.
2012-04-24 00:03:33 +08:00
Chun-wei Fan
63673da5eb Update GLib Visual C++ projects
Some of the bundled PCRE source files are removed as they are not needed
anymore (please see commit e7c0f10e), so don't include them in the projects
2012-04-05 15:45:38 +08:00
Chun-wei Fan
92b84e88ab Fix gspawn-win32-helper Visual C++ projects
The name of the executable for the Release|Win32 and Release|x64 configs
were mixed up.  Fix that.  DOH! for not noting this earlier.
2012-03-28 15:12:04 +08:00
Chun-wei Fan
0463fa1cb0 Fix VS property sheets
We need to accomodate for gspawn-win64-helper-console.exe for the "install"
phase too.
2012-03-28 14:57:12 +08:00
Chun-wei Fan
1c42b6b092 Fix "install" paths in VS property sheets
...and cleanup the VS2010 property sheets a little bit
2012-03-15 16:39:52 +08:00
Chun-wei Fan
9db8692f5a Update Visual C++ projects
Update the build support of the included PCRE as we are now including
PCRE 8.30 with the GLib distribution.

Also "install" the new gversionmacros.h header file.
2012-02-29 11:58:16 +08:00
Chun-wei Fan
af99ccc0d6 Update VS2010 property sheet
Should be $(CopyDir) not $(OutDir) here for VS2010.  Oops :|
2012-02-08 15:09:13 +08:00
Chun-wei Fan
bbda744c0e Update VS property sheets
...To reflect the correct GIO headers to install
2012-02-08 14:54:38 +08:00
Chun-wei Fan
46e2df316d Add Visual C++ 2010 projects to compile GResource tools
Added projects to compile the glib-compile-resources and gresource(-tool)
utility programs during the Visual C++ 2010 build process, "install"
the resulting binaries upon successful compilation, and dist the new
.vcxproj and .vcxproj.filters files.

Also updated the property sheet and "install" project to make sure the new
.exe's are indeed "installed" and removed from the "install" project the
dependency on the testglib project as testglib is not an exhausive test on
GLib and people might want to make that project compile different test
programs as they might need.

Just wondering: I have updated the property sheet to create the
gconstructor_as_data.h header for glib-compile-resources, but is it better
to dist that generated header instead as the VS 2008/2010 projects will
depend on a working installation of PERL on Windows?
2012-02-07 17:05:22 +08:00
Chun-wei Fan
e121d46b25 Update GIO Visual C++ projects
Link to zlib1.lib for release builds and zlib1d.lib for debug builds-
this is to be consistent across the board for the GTK+ stack (and many
other opensource code linking to the ZLib DLL on Windows)
2011-12-22 20:18:11 +08:00
Chun-wei Fan
550fee44a9 Update Visual C++ property sheets
"Install" the newly-introduced gremoteactiongroup.h header.
2011-12-22 18:49:01 +08:00
Ryan Lortie
5e8a10daf1 gitignore 2011-12-19 13:38:09 -05:00
Chun-wei Fan
ab15175567 Update VS property sheets
"Install" the newly-added public headers in GLib and GIO, such as the ones
for GMenuModel, etc.
2011-12-13 12:12:48 +08:00
Chun-wei Fan
fee6293bc9 Update GLib Visual C++ projects
Also link to WinMM.lib since timeGetTime is used (commit 8d023c27).
2011-11-21 10:45:27 +08:00
Chun-wei Fan
0e283dcb94 Update VS property sheets
gmain.h was added into the list of deprecated headers, so "install"
that as weel.
2011-11-07 14:14:45 +08:00
Chun-wei Fan
3a04f87968 Update VS property sheets
Some new headers were added...
2011-10-17 17:47:00 +08:00
Chun-wei Fan
1bfa7e7e86 Update VS property sheets
gcache.h is now a deprecated header, so up the "install" part for it.
2011-10-17 16:40:44 +08:00
Chun-wei Fan
eb125665d8 Update VS property sheets
Stop using G_DISABLE_DEPRECATED as there are now warnings for usage of
deprecated APIs/items in GLib
2011-10-17 14:18:35 +08:00
Chun-wei Fan
f5f242caf8 Update VS projects
Get rid of _CRT_SECURE_NO_WARNINGS and _CRT_NONSTDC_NO_WARNINGS
from the preprocessor definitions as those two macros are now defined
in msvc_recommended_pragmas.h, which is force-included in these projects
via the property sheets.  This will silence C4005 warnings on macro
redefinition.
2011-10-12 11:23:49 +08:00
Chun-wei Fan
17c713d3f6 Update VS property sheets
Missed the new glib/gstringchunk.h header that needed to be installed as
well.
2011-10-12 10:37:24 +08:00
Chun-wei Fan
a73113908f Update VS property sheets
Copy the deprecated headers in their appropriate places.
2011-10-11 18:04:07 +08:00
Chun-wei Fan
b2717740a2 VS support updates
-Fix GLib project/filter files generation as some source items are under
 the "deprecated" subfolder, and filter out the gthread-*.c
-Explicitly specify gthread-win32.c in the GLib project/filter file
 templates, since tarballs are done on Linux.
-Don't define g_static_mutex_get_mutex in the pregenerated
 glibconfig.h.win32(.in) as it is defined in deprecated/gthread.h for Windows
2011-09-23 10:48:25 +08:00
Chun-wei Fan
275f1864d8 Update Visual C++ README.txt's a bit
LibFFI 3.0.10 is now out officially...
2011-09-02 08:41:01 +08:00
Chun-wei Fan
3354b02ccd Update Win32 and VS Readme files
Tell people about the GNOME Live! page that outlines building
GLib and its dependencies with Visual C++.
2011-08-31 13:01:04 +08:00
Chun-wei Fan
d51e0615f9 Update VS property sheets
Stop the "installation" of gio/gtimezonemonitor.h as it has been removed
from GIO (commit 5b68b49b20)
2011-08-23 00:22:06 +08:00
Chun-wei Fan
7e5874dd17 Update GLib Visual C++ Projects
Define USE_SYSTEM_PCRE for all configurations which uses the PCRE that
was already built and "installed" beforehand (i.e. the *_ExtPCRE
configurations) so that the compilation will not pick up the
GLib-bundled pcre.h when one wants to use the PCRE "installation" on
his/her system.
2011-08-23 00:09:05 +08:00
Chun-wei Fan
5fbf3c93b2 Update VS property sheets
-Added glib/ghmac.h to the list of files to copy during the "install" stage
-Cleaned up a bit (glib-2.0->glib-$(ApiVersion), where $(ApiVersion) is
 2.0)
2011-08-22 22:35:31 +08:00
Chun-wei Fan
ebc74835e0 Update VS property sheets ("install" phase)
Copy the new GioTLS headers that were introduced into the GIO
library in commit 	0f99cfa882 during the
"install" stage.
2011-08-12 11:43:40 +08:00
Chun-wei Fan
e6f37ca472 Update Windows READMEs
-Tell people about that libFFI is now needed.
-Tell people not to compile GLib in paths containing spaces.
2011-07-25 11:42:17 +08:00
Chun-wei Fan
c83c91a574 Bug 653841: Update README.win32 and VS README.txt's
This relates to my previous commit titled "add a script to generator
files for building" on behalf of Shixin Zeng.

Tell people about the availability of a python script to create the
necessary files for a Visual C++ build from a GIT checkout.

This is done with the courtesy of Shixin Zeng's python script which does
the job and eliminates the troubles of getting a suitable shell environment
to do the "make dist" job (which is especially not easy on Windows itself!)
2011-07-06 08:25:41 +08:00
Chun-wei Fan
c06e91bcaf Update GIO VS 2010 project templates
Revert EOL of these files to Unix style as they are to be processed
during "make dist"
2011-07-04 22:21:05 +08:00
Chun-wei Fan
fabbf82ae1 Updated GIO Visual Studio Projects
-In gio/Makefile.am, the name for one of the filters for capturing the
 sources for the GIO VS Project Files is corrected.
-Remove the GIO source file items in the VS project files templates as
 a result for this change, and move the entry of the "new"
 gregistrysettingsbackend.c into the filter in gio/Makefile.am
2011-07-04 21:47:59 +08:00
Chun-wei Fan
d1e26c51c8 Update Visual Studio README.txt's
-The VS2010 README.txt should have Windows CRLF EOL.
-Tell people about the added dependency on LibFFI
2011-06-29 14:07:38 +08:00
Chun-wei Fan
1777614600 Re-attempt to correct EOL on VS2010 solution
This time I realized that I needed to set autocrlf=false on my Windows side
... ugh...

This is one of those files that must have CRLF line endings to work
orrectly :|
2011-06-29 12:36:24 +08:00
Chun-wei Fan
088b08bdfc Refine Visual Studio Projects
-Reinstate build/win32/vs10/glib.sln with the correct EOL (DOS/Windows) so
 that the file can be correctly recognized by Windows, rather than having
 the "Unrecognized Visual Studio Version".

-Update the main GLib projects to output the DLL/LIB file into <Release or
 Debug>\<Win32 or x64>\bin for all configurations.

-Update/simplify the property sheets to copy all DLL and LIB files from
 <Release or Debug>\<Win32 or x64>\bin for all configurations.

-Update the VS 2008 property sheet to seperate the intermediate directories
 for all projects as well to avoid errors/warnings of being unable to
 write/access the PDB files as they are in use.
2011-06-24 11:22:47 +08:00
Chun-wei Fan
92365b05c4 Temporarily remove build/win32/vs10/glib.sln
To fix up for the line endings (this needs to be in the DOS/Windows
format)
2011-06-24 11:13:33 +08:00
Chun-wei Fan
c68683f780 Visual C++ 2010 project files update
Consolidate my previous commit into property file... should have realized
this sooner...
2011-06-20 11:50:57 +08:00
Chun-wei Fan
801e52f809 Update Visual C++ 2010 Projects
-Seperate intermediate directories for each project to avoid intermittent
 MSBuild errors that a build log cannot be written while in use, and
 update the property sheet as necessary.
-Minor cleanups of uneeded tags in the projects/properties
2011-06-20 11:34:15 +08:00
Chun-wei Fan
c4796a4d7a Update gsettings/glib-compile-schemas VS Projects
These tools require the use of GModule headers also, so update the include
directories so that the correct gmodule.h will be included instead of the
system-installed version.
2011-06-18 17:55:58 +08:00
Chun-wei Fan
7f6a8d3484 Update VS 2008/2010 property sheets
"Install" the new gobject/glib-types.h as well... it is needed.
2011-06-07 10:58:54 +08:00
Chun-wei Fan
c08fc65edf Update GLib VS9/10 projects
There is no longer need to distinguish between gatomic.c and gatomic-gcc.c.
This will avoid gatomic.c from being included in the projects twice.
2011-06-07 00:37:38 +08:00
Chun-wei Fan
f529dc0e08 Update Visual C++ README.txt
Correct the unpacking path of GLib...
2011-05-18 11:14:00 +08:00
Chun-wei Fan
7ca8691a93 Update VS2010 "install" project
The dependencies on gsettings and glib-compile-schemas were missed-made
up for them here.
2011-05-05 15:09:51 +08:00
Chun-wei Fan
8f484c482d Update VS property sheets
There are some new public headers added for GIO.  Make up for them here
in the install phase
2011-05-05 13:36:34 +08:00
Chun-wei Fan
58c5973a00 MSVC support update for GObject
Apparently GObject now depends on libffi.  Add it to the dependencies list.

For MSVC, use the libffi-3.0.10(rcx) versions.
2011-05-05 12:42:44 +08:00
Chun-wei Fan
707e011061 Update VS2008/2010 README.txt
Tell people about the usage of ZLib to avoid the
problem such as the one mentioned in Bug 633977
2011-05-01 09:42:22 +08:00
Chun-wei Fan
dc7e9a54e5 Add VS 2010 compilation support for some utilities
-Added projects to compile the glib-compile-schemas and gsettings utilities
-Update .vsprops to install these in "install" phase
-Distribute these projects also
2011-04-25 13:32:18 +08:00
Chun-wei Fan
abfef39da9 Remove uneeded item form VS10 folder
There is no install.vcxproj.filters...oops
2011-02-23 14:22:36 +08:00
Chun-wei Fan
cd23ae7134 Visual C++ 2010 Project Files
These are the actual GLib VS2010 project files (*.vcxproj,
*.vcxproj.filters) and property sheet file (*.props) that are used
to compile the GLib, GModule, GObject, GThread, GIO DLLs, along with
the gspawn-win32-helper* programs, glib-genmarshal utility and
testglib test program.  A readme.txt file is also enclosed for
references for building GLib under VS2010.

Note that the project files for GLib, GIO and GObject are templates
that makes use of the autotools items of my last commit so that maintenance
of those files are simplified as new source files are added to these rather
frequently.

Suggestions are welcome for these-please let me know via BugZilla.

Thank you!
2011-02-22 20:08:36 +08:00