After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 681965 - Clean up the autotools files on the parts used for Visual C++ project generation
Clean up the autotools files on the parts used for Visual C++ project generation
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: .General
3.11.x
Other All
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2012-08-16 06:28 UTC by Fan, Chun-wei
Modified: 2015-09-15 12:04 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Enhance the autotools files for header "installation" on MSVC (22.54 KB, patch)
2012-08-16 06:28 UTC, Fan, Chun-wei
none Details | Review
Use Python instead of custom autotools scripts to Generate the Visual Studio Project Files (204.81 KB, patch)
2014-01-13 09:51 UTC, Fan, Chun-wei
none Details | Review
Add common autotools module used for generating MSVC Projects from their respective templates (5.70 KB, patch)
2014-08-25 06:49 UTC, Fan, Chun-wei
none Details | Review
Cleanup and enhance the autotools files for Generating MSVC Projects (176.35 KB, patch)
2014-08-25 06:52 UTC, Fan, Chun-wei
none Details | Review
Add common autotools module used for generating MSVC Projects from their respective templates (take ii) (5.59 KB, patch)
2015-04-17 06:52 UTC, Fan, Chun-wei
committed Details | Review
Cleanup and enhance the autotools files for Generating MSVC Projects (take ii) (135.50 KB, patch)
2015-04-17 06:52 UTC, Fan, Chun-wei
none Details | Review
Cleanup and enhance the autotools files for Generating MSVC Projects (take iii) (135.52 KB, patch)
2015-09-09 15:24 UTC, Fan, Chun-wei
committed Details | Review

Description Fan, Chun-wei 2012-08-16 06:28:01 UTC
Created attachment 221344 [details] [review]
Enhance the autotools files for header "installation" on MSVC

Hi,

As it seems that we get changes in headers (additional/removal/deprecation/renaming) in the development phase of GTK+ quite often, I thought it might be a good idea to update the autotools files and property sheets so that the listings of the GDK/GTK+ headers to install in the property sheets can be made up-to-date with every GTK+ release.

So, this is the patch for this enhancement.

With blessings, thank you!

p.s. I will remove the existing gtk+.vsprops and gtk+.props once this bug gets the nod.
Comment 1 Fan, Chun-wei 2014-01-13 09:51:10 UTC
Created attachment 266140 [details] [review]
Use Python instead of custom autotools scripts to Generate the Visual Studio Project Files

Hi,

I thought it might be a better idea to move the scripts that were used to generate the Visual C++ project files to Python 2.x/3.x, as:

-This removes clutter from the various Makefile.am's
-We can add support for generating the projects for more parts of the package quite easily with Python
-The project files can be re-generated quite easily, even under Windows, as only a Python 2.x/3.x interpreter is needed.  This can still be called easily from 'make dist' by calling the Python scripts with the necessary arguments.
-Easier to maintain, as one would not need to worry about what platform the script is run on, so we don't need to filter out sources from platform so-and-so and inject the sources needed for Windows.

p.s.: The nmake-exe part in the scripts will be added/updated later with another patch as that is for building the GTK+ test programs with NMake Makefiles, to simplify testing the MSVC builds of GTK+.

With blessings, thank you!
Comment 2 Fan, Chun-wei 2014-08-25 06:34:44 UTC
Hi,

As it seems that
Comment 3 Fan, Chun-wei 2014-08-25 06:49:02 UTC
Created attachment 284373 [details] [review]
Add common autotools module used for generating MSVC Projects from their respective templates

Hi,

As it seems that not adding tool requirements and using non-autotools scripts to read autotools files is preferable, it might seem that adding a common module, not unlike the one that is already in use for generating the introspection files ($(INTROSPECTION_MAKEFILE)), is probably better.

So, this is my take on adding that module, which can be shared across projects...
Comment 4 Fan, Chun-wei 2014-08-25 06:52:48 UTC
Created attachment 284374 [details] [review]
Cleanup and enhance the autotools files for Generating MSVC Projects

Hi,

This updates (cleans up) the various autotools that is currently used to generate the MSVC projects by using the common autotools module (attachment 284373 [details] [review]), and also add gdk-win32 and gtk3-demo to the projects that has their projects being generated as well.  The other bonus to this clean-up is that now the property sheets for "installing" the headers are also generated, so that it will be kept up-to-date during releases as headers frequently change during a development cycle.

With blessings, thank you!
Comment 5 Fan, Chun-wei 2015-04-17 06:52:19 UTC
Created attachment 301784 [details] [review]
Add common autotools module used for generating MSVC Projects from their respective templates (take ii)

Hi,

This is the updated version of the common autotools module that is used to generate the complete MSVC 2008/2010 projects from their respective templatess, as this avoids the use of realpath(1), as there are many incompatible realpath(1) implementations out there that are packaged by different distros.
Comment 6 Fan, Chun-wei 2015-04-17 06:52:49 UTC
Created attachment 301785 [details] [review]
Cleanup and enhance the autotools files for Generating MSVC Projects (take ii)
Comment 7 Fan, Chun-wei 2015-04-17 07:00:19 UTC
Hi,

(Sorry, I mistaken hit enter on my keyboard to miss out the comments part, when I did comment to upload the new patch)

This is the updates to gdk/Makefile.am and gtk/Makefile.am where we generate the complete MSVC 2008/2010 project files from their respective templates, using the autotools module in attachment 301784 [details] [review].  This cleans up these 2 Makefile.am's, and has the added benefit of making the headers list to "install" in the property sheets automated (i.e. done during 'make dist' as well), where we can avoid a broken "installation" of the MSVC builds if the headers listings are not updated in time for release.

This also expands such automation of project file generation and header installation, if applicable to the following items:
gdk-win32
gdk-broadway
gtk3-demo
gtk3-demo-application
gtk3-icon-browser
gail-util

So that the maintenance of project files related to these can also be simplified.

With blessings, thank you!
Comment 8 Fan, Chun-wei 2015-09-09 15:24:46 UTC
Created attachment 311001 [details] [review]
Cleanup and enhance the autotools files for Generating MSVC Projects (take iii)

Hi,

This replaces attachment 301785 [details] [review] so that all the needed changes are in place.

With blessings, thank you!
Comment 9 Ignacio Casal Quinteiro (nacho) 2015-09-15 09:04:11 UTC
Fan, you are the maintainer the facto so go ahead! Thanks
Comment 10 Fan, Chun-wei 2015-09-15 12:03:48 UTC
Hi Nacho,

Thanks for giving me the go-ahead!

The patches were pushed as:

-Attachment 301874 [details]: deb632c (with Paolo's suggested note from bug 735429)
-Attachment 311001 [details]: d836a52

Also, another commit was pushed to remove the static projects that were superseded by this patch series as 908850c.

Will close this bug now, after double checking with 'make -j8 dist', meaning that these will no longer get in the way of 'make -jN dist'.

With blessings, thank you!