[gtkmm/win32-installer-update-3: 12/13] WIP: Add nmake makefile to build installer




commit 82fb51c72a836d0176d6fb5e66d3577a838cc915
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Wed May 11 17:47:00 2022 +0800

    WIP: Add nmake makefile to build installer

 win32_installer/build-installer.mak.in | 63 ++++++++++++++++++++++++++++++++++
 win32_installer/meson.build            | 15 ++++++--
 2 files changed, 76 insertions(+), 2 deletions(-)
---
diff --git a/win32_installer/build-installer.mak.in b/win32_installer/build-installer.mak.in
new file mode 100644
index 00000000..74cba11b
--- /dev/null
+++ b/win32_installer/build-installer.mak.in
@@ -0,0 +1,63 @@
+# NMake Makefile for building the gtkmm installer
+
+!include @installer_srcdir@\MSVC_NMake\detectenv-msvc.mak
+
+GLIB_API_VER = 2.0
+ATK_API_VER = 1.0
+PANGO_API_VER = 1.0
+GDK_PIXBUF_API_VER = 2.0
+GTK_API_VER = 3.0
+
+SIGC_API_VER = 2.0
+CAIROMM_API_VER = 1.0
+GLIBMM_API_VER = 2.4
+ATKMM_API_VER = 1.6
+PANGOMM_API_VER = 1.4
+GTKMM_API_VER = $(GTK_API_VER)
+
+!ifndef DEP_PREFIX
+DEP_PREFIX = $(PREFIX)
+!endif
+
+!ifndef INCLUDEDIR
+INCLUDEDIR = $(DEP_PREFIX)\include
+!endif
+
+!ifndef LIBDIR
+LIBDIR = $(DEP_PREFIX)\lib
+!endif
+
+!ifndef BINDIR
+BINDIR = $(DEP_PREFIX)\bin
+!endif
+
+all:
+
+copy-headers:
+       @if not exist include\ mkdir include
+       @-for %d in (libxml2\libxml harfbuzz) do @if not exist include\%d\ mkdir include\%d
+       @-for %d in (glib-$(GLIB_API_VER)\glib\deprecated glib-$(GLIB_API_VER)\gobject 
glib-$(GLIB_API_VER)\gio gio-win32-$(GLIB_API_VER)\gio) do @if not exist include\%d\ mkdir include\%d
+       @-for %d in (atk-$(ATK_API_VER)\atk pango-$(PANGO_API_VER)\pango 
gdk-pixbuf-$(GDK_PIXBUF_API_VER)\gdk-pixbuf) do @if not exist include\%d\ mkdir include\%d
+       @-for %d in (gdk gdk\win32 gdk\broadway gdk\deprecated gtk gtk\a11y gtk\deprecated) do @if not exist 
include\gtk-$(GTK_API_VER)\%d\ mkdir include\gtk-$(GTK_API_VER)\%d
+       @-for %t in (sigc++) do @for %d in (adaptors adaptors\lambda functors) do @if not exist 
include\%t-$(SIGC_API_VER)\%t\%d\ mkdir include\%t-$(SIGC_API_VER)\%t\%d
+       @-for %t in (cairo) do @if not exist include\%tmm-$(CAIROMM_API_VER)\%tmm mkdir 
include\%tmm-$(CAIROMM_API_VER)\%tmm
+       @-for %t in (libxml++) do for %v in (2.6 3.0) do @for %d in (exceptions io nodes parsers validators) 
do @if not exist include\%t-%v\%t\%d mkdir include\%t-%v\%t\%d
+       @-for %t in (glib gio) do @for %d in (%tmm-$(GLIBMM_API_VER)\%tmm\private) do @if not exist 
include\%d\ mkdir include\%d
+       @-for %t in (atk) do @for %d in (%tmm-$(ATKMM_API_VER)\%tmm\private) do @if not exist include\%d\ 
mkdir include\%d
+       @-for %t in (pango) do @for %d in (%tmm-$(PANGOMM_API_VER)\%tmm\private) do @if not exist include\%d\ 
mkdir include\%d
+       @-for %f in (zlib.h png.h pnglibconf.h pngconf.h intl.h iconv.h pcre.h)
+       @for %d in (libxml2\libxml) do @copy $(INCLUDEDIR)\%d\* include\%d
+       @for %d in (. glib glib\deprecated gobject gio) do @copy $(INCLUDEDIR)\glib-$(GLIB_API_VER)\%d\* 
include\glib-$(GLIB_API_VER)\%d
+       @for %d in (gio) do @copy $(INCLUDEDIR)\%d-win32-$(GLIB_API_VER)\%d\* 
include\%d-win32-$(GLIB_API_VER)\%d
+       @for %d in (atk) do @copy $(INCLUDEDIR)\%d-$(ATK_API_VER)\%d\* include\%d-$(ATK_API_VER)\%d
+       @for %d in (pango) do @copy $(INCLUDEDIR)\%d-$(PANGO_API_VER)\%d\* include\%d-$(PANGO_API_VER)\%d
+       @for %d in (gdk-pixbuf) do @copy $(INCLUDEDIR)\%d-$(GDK_PIXBUF_API_VER)\%d\* 
include\%d-$(GDK_PIXBUF_API_VER)\%d
+       @-for %d in (.  win32 deprecated broadway) do @copy $(INCLUDEDIR)\gtk-$(GTK_API_VER)\gdk\%d\* 
include\gtk-$(GTK_API_VER)\gdk\%d
+       @for %d in (.  a11y deprecated) do @copy $(INCLUDEDIR)\gtk-$(GTK_API_VER)\gtk\%d\* 
include\gtk-$(GTK_API_VER)\gtk\%d
+       @for %t in (sigc++) do @for %d in (. adaptors adaptors\lambda functors) do @copy 
"$(INCLUDEDIR)\%t-$(SIGC_API_VER)\%t\%d\*" "include\%t-$(SIGC_API_VER)\%t\%d"
+       @for %t in (cairo) do @copy $(INCLUDEDIR)\%tmm-$(CAIROMM_API_VER)\%tmm\* 
include\%tmm-$(CAIROMM_API_VER)\%tmm
+       @for %t in (libxml++) do for %v in (2.6 3.0) do @for %d in (. exceptions io nodes parsers validators) 
do @copy "$(INCLUDEDIR)\%t-%v\%t\%d\*" "include\%t-%v\%t\%d"
+       @for %t in (glib gio) do @for %d in (%tmm-$(GLIBMM_API_VER) %tmm-$(GLIBMM_API_VER)\%tmm\private) do 
@copy $(INCLUDEDIR)\%d\* include\%d
+       @for %t in (atk) do @for %d in (%tmm-$(ATKMM_API_VER) %tmm-$(ATKMM_API_VER)\%tmm\private) do @copy 
$(INCLUDEDIR)\%d\* include\%d
+       @for %t in (pango) do @for %d in (%tmm-$(PANGOMM_API_VER) %tmm-$(PANGOMM_API_VER)\%tmm\private) do 
@copy $(INCLUDEDIR)\%d\* include\%d
+       @for %d in (glib-$(GLIB_API_VER) sigc++-$(SIGC_API_VER) glibmm-$(GLIBMM_API_VER) 
giomm-$(GLIBMM_API_VER) cairomm-$(CAIROMM_API_VER) atkmm-$(ATKMM_API_VER) pangomm-$(PANGOMM_API_VER)
\ No newline at end of file
diff --git a/win32_installer/meson.build b/win32_installer/meson.build
index 1648a1da..633b1dbe 100644
--- a/win32_installer/meson.build
+++ b/win32_installer/meson.build
@@ -1,17 +1,28 @@
 # win32_installer
 
 # Input: pkg_conf_data, lgpl_license
-# Output: gtkmm_installer_nsi, lgpl_license_txt
+# Output: win32_installer_data, gtkmm_installer_nsi, lgpl_license_txt
 
 if host_machine.system() != 'windows'
   message('NSIS installer is only possible on Windows')
   subdir_done()
 endif
 
+win32_installer_data = configuration_data()
+win32_installer_data.merge_from(pkg_conf_data)
+win32_installer_data.set('installer_srcdir', meson.source_root())
+
 configure_file(
   input: 'gtkmm-installer.nsi.in',
   output: 'gtkmm-installer.nsi',
-  configuration: pkg_conf_data,
+  configuration: win32_installer_data,
+  install: false,
+)
+
+configure_file(
+  input: 'build-installer.mak.in',
+  output: 'build-installer.mak',
+  configuration: win32_installer_data,
   install: false,
 )
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]