[glibmm] NMake Makefiles: "Install" gmmproc items
- From: Chun-wei Fan <fanchunwei src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glibmm] NMake Makefiles: "Install" gmmproc items
- Date: Wed, 26 Feb 2020 03:55:53 +0000 (UTC)
commit dc95c140caddd1ed30f70a6a2768263e4a11bc88
Author: Chun-wei Fan <fanchunwei src gnome org>
Date: Wed Feb 26 11:53:34 2020 +0800
NMake Makefiles: "Install" gmmproc items
...so that one may be able to use these in the future for other -mm packages.
Also update the header installation as they could have been generated during
the build. Update README.win32 to indicate building from a GIT checkout is
better supported, and how one may carry this build out.
MSVC_NMake/install.mak | 29 +++++++++++++++++++----------
README.win32 | 28 ++++++++++++++++++++++++++++
2 files changed, 47 insertions(+), 10 deletions(-)
---
diff --git a/MSVC_NMake/install.mak b/MSVC_NMake/install.mak
index 9158a61e..aa22d772 100644
--- a/MSVC_NMake/install.mak
+++ b/MSVC_NMake/install.mak
@@ -2,12 +2,13 @@
# a path under $(PREFIX).
install: all
- @if not exist $(PREFIX)\bin\ mkdir $(PREFIX)\bin
- @if not exist $(PREFIX)\lib\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include\ mkdir
$(PREFIX)\lib\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include
- @if not exist
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private\ @mkdir
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private
- @if not exist
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm_generate_extra_defs\ @mkdir
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm_generate_extra_defs
- @if not exist $(PREFIX)\lib\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include\ mkdir
$(PREFIX)\lib\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include
- @if not exist $(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private\
@mkdir $(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private
+ @if not exist $(PREFIX)\bin\ md $(PREFIX)\bin
+ @if not exist $(PREFIX)\lib\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include\ md
$(PREFIX)\lib\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include
+ @if not exist
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private\ @md
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private
+ @if not exist
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm_generate_extra_defs\ @md
$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm_generate_extra_defs
+ @if not exist $(PREFIX)\lib\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include\ md
$(PREFIX)\lib\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include
+ @if not exist $(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private\
@md $(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private
+ @-for %d in (m4 pm) do @md
$(PREFIX)\share\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\proc\%d
@copy /b vs$(VSVER)\$(CFG)\$(PLAT)\$(GLIBMM_LIBNAME).dll $(PREFIX)\bin
@copy /b vs$(VSVER)\$(CFG)\$(PLAT)\$(GLIBMM_LIBNAME).pdb $(PREFIX)\bin
@copy /b vs$(VSVER)\$(CFG)\$(PLAT)\$(GLIBMM_LIBNAME).lib $(PREFIX)\lib
@@ -17,11 +18,19 @@ install: all
@copy /b $(GLIBMM_EXTRA_DEFS_GEN_LIB) $(PREFIX)\lib
@copy ..\glib\glibmm.h "$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\"
@copy ..\gio\giomm.h "$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\"
- @for %h in ($(glibmm_files_all_h)) do @copy ..\glib\glibmm\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\%h"
- @for %h in ($(glibmm_generated_private_headers)) do @copy ..\glib\glibmm\private\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private\%h"
+ @for %h in ($(glibmm_files_all_h)) do @if exist ..\glib\glibmm\%h copy ..\glib\glibmm\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\%h"
+ @for %h in ($(glibmm_files_all_h)) do @if exist vs$(PDBVER)\$(CFG)\$(PLAT)\glibmm\%h copy
vs$(PDBVER)\$(CFG)\$(PLAT)\glibmm\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\%h"
+ @for %h in ($(glibmm_generated_private_headers)) do @if exist ..\glib\glibmm\private\%h copy
..\glib\glibmm\private\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private\%h"
+ @for %h in ($(glibmm_generated_private_headers)) do @if exist
vs$(PDBVER)\$(CFG)\$(PLAT)\glibmm\private\%h copy vs$(PDBVER)\$(CFG)\$(PLAT)\glibmm\private\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\private\%h"
@for %h in ($(glibmm_files_extra_ph_int)) do @copy ..\glib\glibmm\%h
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm\%h"
- @for %h in ($(giomm_generated_headers) $(giomm_files_extra_h)) do @copy ..\gio\giomm\%h
"$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\%h"
- @for %h in ($(giomm_generated_private_headers)) do @copy ..\gio\giomm\private\%h
"$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private\%h"
+ @for %h in ($(giomm_generated_headers) $(giomm_files_extra_h)) do @if exist ..\gio\giomm\%h copy
..\gio\giomm\%h "$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\%h"
+ @for %h in ($(giomm_generated_headers) $(giomm_files_extra_h)) do @if exist
vs$(PDBVER)\$(CFG)\$(PLAT)\giomm\%h copy vs$(PDBVER)\$(CFG)\$(PLAT)\giomm\%h
"$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\%h"
+ @for %h in ($(giomm_generated_private_headers)) do @if exist ..\gio\giomm\private\%h copy
..\gio\giomm\private\%h
"$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private\%h"
+ @for %h in ($(giomm_generated_private_headers)) do @if exist
vs$(PDBVER)\$(CFG)\$(PLAT)\giomm\private\%h copy vs$(PDBVER)\$(CFG)\$(PLAT)\giomm\private\%h
"$(PREFIX)\include\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\giomm\private\%h"
@copy ".\glibmm\glibmmconfig.h"
"$(PREFIX)\lib\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include\"
@copy ".\giomm\giommconfig.h"
"$(PREFIX)\lib\giomm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\include\"
@copy "..\tools\extra_defs_gen\generate_extra_defs.h"
"$(PREFIX)\include\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\glibmm_generate_extra_defs\"
+ @for %d in (m4 pm) do copy ..\tools\%d\*
$(PREFIX)\share\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\proc\%d
+ @for %f in (gmmproc generate_wrap_init.pl) do @if exist ..\tools\%f copy ..\tools\%f
$(PREFIX)\share\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\proc
+ @for %f in (gmmproc generate_wrap_init.pl) do @if not exist ..\tools\%f copy ..\tools\%f.in
$(PREFIX)\share\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\proc\%f
+ @echo Please ensure gmmproc and generate_wrap_init.pl in
$(PREFIX)\share\glibmm-$(GLIBMM_MAJOR_VERSION).$(GLIBMM_MINOR_VERSION)\proc contain the correct paths
diff --git a/README.win32 b/README.win32
index a186c4b5..440271f6 100644
--- a/README.win32
+++ b/README.win32
@@ -62,6 +62,34 @@ A 'tests' target will build the test programs for glibmm and giomm, an
with the public headers to appropriate subdirs of $(PREFIX). A 'clean'
target is also provided to remove all the built files.
+The NMake Makefiles now support building the glibmm libraries directly from a GIT checkout
+with a few manual steps required, namely to:
+
+-Ensure that you have a copy of Cygwin or MSYS/MSYS64 installed, including
+ m4.exe and sh.exe. You should also have a PERL for Windows installation
+ as well, and your PATH should contain the paths to your PERL interpreter
+ and the bin\ directory of your Cygwin or MSYS/MSYS64 installation, and
+ it is recommended that these paths are towards the end of your PATH. You need
+ to install the XML::Parser PERL module as well, which requires libexpat.
+
+-Make a new copy of the entire source tree to some location, where the build
+ is to be done; then:
+--Copy $(srcroot)\glib\glibmmconfig.h.in to $(srcroot)\MSVC_NMake\glibmm\glibmmconfig.h
+--Copy $(srcroot)\gio\giommconfig.h.in to $(srcroot)\MSVC_NMake\giomm\giommconfig.h
+--Copy $(srcroot)\MSVC_NMake\glibmm\glibmm.rc.in to $(srcroot)\MSVC_NMake\glibmm\glibmm.rc
+--Copy $(srcroot)\MSVC_NMake\giomm\giomm.rc.in to $(srcroot)\MSVC_NMake\giomm\giomm.rc
+--Copy $(srcroot)\tools\gmmproc.in to $(srcroot)\tools\gmmproc
+--Copy $(srcroot)\tools\generate_wrap_init.pl.in to $(srcroot)\tools\generate_wrap_init.pl
+
+After copying the above 6 files, you need to ensure that they reflect on the package version
+that best matches your checkout status and the paths in $(srcroot)\tools\gmmproc and
+$(srcroot)\tools\generate_wrap_init.pl (the items enclosed between the @...@'s) should reflect
+on where you intend for nmake /f Makefile.vc CFG=$(CFG) install to install to (i.e. $(PREFIX)).
+For giommconfig.h, it is recommended to keep GIOMM_STATIC_LIB and GIOMM_DISABLE_DEPRECATED
+undefined unless you know what you are doing (remember, the NMake Makefiles only support DLL
+builds out-of-the-box). You may ignore the fields in glibmmconfig.h the values between
+#ifdef GLIBMM_CONFIGURE and #endif /* GLIBMM_CONFIGURE */.
+
3. Glibmm methods and signals not available on win32
All glibmm methods and signals are available on win32.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]