summaryrefslogtreecommitdiff
path: root/build
Commit message (Collapse)AuthorAgeFilesLines
* Visual Studio builds: Generate a generic cairo-win32.pcChun-wei Fan2016-04-254-5/+16
| | | | This is needed so that gtk+-3.0.pc will be complete.
* build/win32/pc_base.py: Allow custom optionsChun-wei Fan2016-04-211-5/+6
| | | | | | | | | Some packages might have some parts that are built for certain build configs, meaning that they could have .pc files of their own, such as Pango, where PangoFT2 is optionally built. Allow such an option if needed. Also remove some trailing whitespaces.
* MSVC builds: Generate .pc files for external packagesChun-wei Fan2016-04-134-5/+63
| | | | | | | | | That is, for Cairo, Freetype and libxml2, as packages that we support for Visual Studio builds depend on these packages, specifically for generating the introspection files for them. These are generated with rather generic info in them, so that they are sufficient for our purposes here.
* MSVC builds: Use a envvar for pkg-configChun-wei Fan2016-04-111-1/+6
| | | | | | | Allow using a envvar to specify the path to pkg-config, as it may not be in the PATH. Suggestion given by the HexChat project.
* MSVC builds: Add files to 'make dist'Chun-wei Fan2016-03-183-0/+3
| | | | | | We also want to include the gi-install.vcxproj.filters for the Visual Studio 2012~2015 builds, to make the gi-install project look nicer in the IDE, which was done in the last commit.
* MSVC builds: Generate the .pc filesChun-wei Fan2016-03-189-5/+258
| | | | | | | Generate the .pc files as part of the build of the Visual Studio projects, and "install" them to $(CopyDir)\lib\pkgconfig, so that it would make it easier for packages building introspection to find the .pc files for g-i for Visual Studio builds.
* MSVC builds: Have the package version available in the projectsChun-wei Fan2016-03-182-0/+8
| | | | This is used for generating the pkg-config file for this package.
* Remove file accidently committedChun-wei Fan2016-03-171-107/+0
|
* Update README.txt for Visual Studio buildsChun-wei Fan2016-03-173-28/+143
| | | | | The build process of the introspection files for this package has been further improved lately, so let people know.
* MSVC builds: Update forgotten fileChun-wei Fan2016-03-171-6/+29
| | | | build/win32/vs10/gi-install.propsin does need to be updated...
* MSVC builds: Remove a file that was added by mistakeChun-wei Fan2016-03-172-196/+0
| | | | | | | build/win32/vs10/gi-install.props is generated during 'make dist', so we don't want to add it into vresion control. Also drop a property sheet that is no longer used.
* MSVC builds: Re-integrate introspection build in projectsChun-wei Fan2016-03-1721-52/+497
| | | | | | | | | | | | | | | | | | GLib has been recently updated to optionally generate the .pc files within the MSVC builds, which is needed to build the introspection files, if Python is available. As we are looking for the .pc files from a common location as a result, we can build the introspection files within the project files, so that the build process does not have to be split into 2 stages. This is done by using wrapper projects that calls the NMake Makefiles that is used to build the introspection files. Note that although the IDE claims that the introspection files failed to build, but they are really generated-so some investigation is needed to see whether we can silence those false-positive errors. Also clean up the property sheets a bit.
* MSVC builds: Prepare NMake Makefiles for MSVC project inclusionChun-wei Fan2016-03-154-9/+10
| | | | | | Allow the CFG parameter to accept "Debug" and "Release", as this is the convention of the project files of Visual Studio. Also use TOP_SRCDIR everywhere rather than hard-coding '..\..' for it.
* MSVC builds: Enhance and simplify build-related scriptsChun-wei Fan2016-03-112-13/+15
| | | | | | This updates the replace.py script to support replacing multiple items in a file from GLib's build/win32, which allows us to simplify the script that is used to create cairo-1.0.gir for Visual Studio builds.
* MSVC builds: Fix previous commitChun-wei Fan2016-03-111-3/+4
| | | | | We need to get the full, complete path for $(PREFIX) for all cases, not just when using the default prefix.
* MSVC builds: Make introspection builds a bit easierChun-wei Fan2016-03-111-1/+16
| | | | | | | | | | | | | | | | | GLib recently had a script that would generate the pkg-config files for its Visual Studio builds, which would be sufficient for the need of building introspection files, so update the NMake Makefile modules to look for them automatically, without the need to manually set PKG_CONFIG_PATH in the console, provided that the build was done in the same directory tree[1] and was not moved. Note that this would precede any PKG_CONFIG_PATH's that were already set in the console. [1]: This would mean: $(tree_root) | |--$(GLib_src_tree) |--$(G-I_src_tree) |...
* MSVC introspection builds: Also include gio-windows-2.0.pcChun-wei Fan2016-03-021-1/+2
| | | | | | | | ...for generating GLib-2.0.gir, this is to ensure that the headers in include/gio-win32-2.0 is also included when we generate the .gir files, as gio.h will include the include/gio-win32-2.0 headers at some point. This will ensure that all the .gir's that depend on GLib-2.0.gir will make the necessary inclusions.
* MSVC builds: Update include pathsChun-wei Fan2016-03-022-2/+2
| | | | | | We want to make sure that the include/gio-win32-2.0 is also being searched for the headers for GIO as well, and the GLib include paths should first be searched before the include paths of its dependencies.
* MSVC builds: Update NMake Makefiles for introspectionChun-wei Fan2016-01-042-6/+8
| | | | | | | | | | | This updates the NMake Makefiles for: -Removing the __pycache__ directory on clean, which is generated when using Python 3.x, in the NMake Makefiles for building the main introspection files. -Building the giteststructinfo test program, as well as moving builds of DLLs and EXEs to using inference rules when applicable, for the NMake Makefiles that is used to build the tests.
* MSVc builds: Fix last commitChun-wei Fan2016-01-042-0/+2
| | | | I missed gitestmacros.h, which will be required... :|
* MSVC builds: "Install" some of the test sourcesChun-wei Fan2016-01-042-0/+11
| | | | | Some of these test sources will be used during the test of PyGObject/PyGI, so "install" them.
* build/win32/gi-tests-msvc.mak: Clean up outputChun-wei Fan2015-12-021-2/+4
| | | | | | | We want to clean up the .ilk files, but only want to create them only during debug builds. Also silence some warnings during the tests by defining TOP_BUILDDIR.
* build/win32: Use PREFIX for all NMake MakefilesChun-wei Fan2015-12-023-23/+23
| | | | This makes things a bit more consistent, rather than using BASEDIR
* build/win32: Make detectenv-msvc.mak and introspection-msvc.mak genericChun-wei Fan2015-12-023-10/+27
| | | | | | | We want to have projects to share common items as much as possible, so move project-specific away from detectenv-msvc.mak and introspection-msvc.mak so that projects needing to update intropsection-msvc.mak can come back here to update it, and update detectenv-msvc.mak from $(glib_srcroot)/build/win32.
* build/win32/vs*/README.txt: Ensure line endings are consistentChun-wei Fan2015-12-022-33/+33
| | | | We need DOS/Windows line feeds here...
* MSVC 2010+ builds: Fix tool scripts generationChun-wei Fan2015-11-201-2/+2
| | | | | The Python command for generating the tool scripts are mixed up for 32-bit release and 64-bit debug builds, fix that. Oops.
* build: Move MSVC-related build items to build/win32Chun-wei Fan2015-11-2021-244/+251
| | | | | | | | | | Move the NMake Makefiles modules and the Python tool scripts to build/win32, so that we may be consistent across the board. Also, update the build files and the README.txt's to make it clear to people that Python 3.3+ is now supported for building the introspection files, in addition to Python 2.7.x. Make the NMake Makefiles more flexible in powershell environments so that the variables can be properly passed in from the command line.
* build/Makefile.msvc-introspection: Change PYTHON2 to PYTHONChun-wei Fan2015-11-121-1/+1
| | | | | Since the introspection scanner also supports Python 3.3+, use PYTHON instead of PYTHON2 to make this clearer to people.
* MSVC builds: Rename "install" projectChun-wei Fan2015-11-129-7/+7
| | | | | | Rename it to "gi-install" so that it will not conflict with the other projects in the GTK+ stack if used as a part of an all-in-one solution file.
* MSVC 2010+ builds: Do not explicitly use /LTCGChun-wei Fan2015-11-125-11/+0
| | | | | | | | | This partially reverts 8fbfbf3. As we now ensure that items using GResources and GConstructors are always referenced so that the linker does not optimize them out in a default Release build, we no longer need to enforce the use of /LTCG, so /LTCG:incremental will work as well.
* MSVC release builds: Ensure that /LTCG is usedChun-wei Fan2015-10-285-4/+14
| | | | | | | | | MSVC 2015 changed its default link-time code generation setting to /LTCG:incremental, which causes problems if /opt:noref is to be used, meaning that some code will be optimized out by the linker. Avoid this situtation here by enforcing the use of /LTCG for MSVC 2010+ builds.
* build: Add an autotools module for introspection builds on MSVCChun-wei Fan2015-10-052-2/+128
| | | | | | | | | | | | This adds an autotools module that can be included in projects to be used for generating the command lines for g-ir-scanner and g-ir-compiler for introspection builds on Visual Studio builds. This is currently not used directly in the MSVC builds of g-i, but is added here as other modules are directly to get this file from here (i.e. $(srcroot)/build) for inclusion in their Makefile.am's to support introspection builds for modules that support Visual Studio builds.
* MSVC Builds: "Add" Visual Studio 2015 ProjectsChun-wei Fan2015-09-255-15/+52
| | | | | | | | Update the common autotools module that was used to create the Visual Studio 2012/2013 projects so that we can create the 2015 projects as well. The 2015 projects, like the 2012 and 2013 ones are largely similar to the 2010 ones in format, so we just need to copy the 2010 projects and replace the items in there as needed.
* Clean Up Visual Studio Project GenerationChun-wei Fan2015-09-254-14/+36
| | | | | | | | This makes use of the common autotools modules that was just added so that there would need to be less items in g-i's main Makefile-msvcproj.am, so that we can generate the complete Visual Studio 2008/2010 project files (which will then be used to obtain the Visual Studio 2012 and 2013 projects) and the property sheets to "install" the built binaries and headers.
* build: Add Common Autotools Module for MSVC ProjectsChun-wei Fan2015-09-251-0/+107
| | | | | | | | | | This adds a common autotools module that can be used by various projects to generate the Visual Studio projects as needed, and if necessary, generate the headers listings to "install" for that project, based on items passed in to this. This is modelled on the Makefile.introspection autotools file that is used by many GNOME projects to generate the introspection files. https://bugzilla.gnome.org/show_bug.cgi?id=753555
* gen-win32-cairo-gir.py: Fix From Last CommitChun-wei Fan2015-09-251-4/+4
| | | | The cairo-1.0.gir should be generated in build/, not gir/, for our purposes
* MSVC Introspection NMake Makefile: Make Message ClearerChun-wei Fan2015-09-251-1/+1
|
* MSVC Builds: Use the Shared replace.py ScriptChun-wei Fan2015-09-255-44/+139
| | | | | | ...which can be copied from GLib's $(srcroot)/build/win32, so the maintenance of these scripts that generate the needed tool scripts and cairo-1.0.gir can be easier maintained.
* MSVC Builds: Update README.txt'sChun-wei Fan2015-07-302-27/+5
| | | | | | | Remove mentions about the GCC requirement for building the introspection files, as that is no longer needed. https://bugzilla.gnome.org/show_bug.cgi?id=728313
* MSVC Builds: Drop GCC RequirementChun-wei Fan2015-07-303-25/+2
| | | | | | | | | As we are running the preprocessor without using stdin as its input, we can now drop the MSVC build-time dependency on a MinGW/GCC installation for introspection files, which means we also don't need to supply definitions for time_t anymore. https://bugzilla.gnome.org/show_bug.cgi?id=728313
* MSVC Introspection Builds: Make Cairo Note ClearerChun-wei Fan2015-07-271-2/+2
|
* MSVC Builds: Fix Script Generation CommandChun-wei Fan2015-07-252-4/+4
| | | | Update the property sheets, to reflect the changes in the last commit.
* build/: Fix Incorrect Naming of ScriptChun-wei Fan2015-07-251-0/+0
|
* MSVC Builds: Update to Fix Build of ScriptsChun-wei Fan2015-07-246-150/+40
| | | | | | | | | Update the custom build steps that is used to generate the scripts in tools/, so that the Visual Studio builds can be done successfully. Also assume that one will be using the same Python release series for x86 and x64 builds, while we still leave room for one to customize these if necesssary.
* MSVC Builds: Clean Up And Fix the ProjectsChun-wei Fan2015-07-243-26/+0
| | | | | | | We use the __declspec(dllexport) mechanism for exporting the symbols from the girepository DLL during the build since some time ago, but forgot to remove the .def-generating items from the project files, notably the MSVC 2010+ ones, which could have well broke those builds. Sorry.
* MSVC Builds: Generate The Tools ScriptsChun-wei Fan2015-07-245-63/+121
| | | | | | | | | | | | | Since commit 7e00146, the scripts in tools/ are being generated from tools/g-ir-tool-template.in, so we need to deal with this to fix Visual Studio Builds. Add a simple script to generate the Python tools scripts by splitting up the gen-cairo-gir.py script and rename gen-cairo-gir.py to gen-win32-cairo-gir.py to make things clearer to people, and adjust the corresponding files accordingly. Make sure everything here use UNIX line endings, for consistency's sake.
* MSVC .gir Builds: Allow More Flexibility for CairoChun-wei Fan2015-07-242-8/+22
| | | | | | | | | | | Allow one to pass in the cairo-gobject DLL filename for generating cairo-1.0.gir, as the DLL filename for Cairo-GObject may vary between different setups, if needed. Display a note telling the user that he/she needs to ensure that the DLL name used is correct so that programs and scripts using the cairo-1.0.typelib can run correctly. Also clean up the generation of cairo-1.0.gir a bit by directly generating the cairo-1.0.gir in build\ only during the build.
* build/gi-inrtospection-msvc.mak: Allow Libtool Style NamesChun-wei Fan2015-07-221-1/+5
| | | | | | | ...for the cairo-1.0.gir, as there may be still people that prefer to use it, for some reason. For the GLib and GI DLLs, the DLL name is deduced from the --library argument (i.e. the filename of the .lib) passed in to g-ir-scanner, so that part is not affected by this change.
* build/gen-cairo-gir.py: Clean Up A BitChun-wei Fan2015-07-221-1/+0
| | | | | | | We don't really need the --vsver option anymore, so we can just drop it. The NMake Makefile does the handling of the DLL name according to the Visual Studio version used, according to the DLL naming convention that we used in the GNOME parts of the GTK+ stack).
* MSVC Builds: Remove Some Autotools CruftChun-wei Fan2015-04-302-4/+0
| | | | | | Remove the rules for EXTRA_DIST for MSVC 2012 and 2013 as we are now using pattern rules to generate these projects from the 2010 ones, which will handle this automatically, and these old rules will get in the way.