Alexandre Julliard : makefiles: Use generic flags to specify which directories need a make install.

Alexandre Julliard julliard at winehq.org
Mon Jun 13 11:49:16 CDT 2011


Module: wine
Branch: master
Commit: e492fcc833446f003e82f8172ba0f1bcc2cdf697
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=e492fcc833446f003e82f8172ba0f1bcc2cdf697

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Sun Jun 12 12:03:53 2011 +0200

makefiles: Use generic flags to specify which directories need a make install.

---

 aclocal.m4           |   26 ++++++++++++++++++++------
 configure            |   40 +++++++++++++++++++++++++++-------------
 configure.ac         |   14 +++++++-------
 tools/make_makefiles |    5 +++++
 4 files changed, 59 insertions(+), 26 deletions(-)

diff --git a/aclocal.m4 b/aclocal.m4
index 86ba73b..781e627 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -211,15 +211,29 @@ wine_fn_config_makefile ()
 "all: $ac_dir
 .PHONY: $ac_dir
 $ac_dir: $ac_dir/Makefile dummy
-	@cd $ac_dir && \$(MAKE)
-install:: $ac_dir
+	@cd $ac_dir && \$(MAKE)"
+
+    wine_fn_has_flag install-lib $ac_flags || wine_fn_has_flag install-dev $ac_flags || return
+
+    wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
+"install:: $ac_dir
 	@cd $ac_dir && \$(MAKE) install
-install-lib:: $ac_dir
-	@cd $ac_dir && \$(MAKE) install-lib
-install-dev:: $ac_dir
-	@cd $ac_dir && \$(MAKE) install-dev
 uninstall:: $ac_dir/Makefile
 	@cd $ac_dir && \$(MAKE) uninstall"
+
+    if wine_fn_has_flag install-lib $ac_flags
+    then
+        wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
+"install-lib:: $ac_dir
+	@cd $ac_dir && \$(MAKE) install-lib"
+    fi
+
+    if wine_fn_has_flag install-dev $ac_flags
+    then
+        wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
+"install-dev:: $ac_dir
+	@cd $ac_dir && \$(MAKE) install-dev"
+    fi
 }
 
 wine_fn_config_lib ()
diff --git a/configure b/configure
index 700069d..36692f7 100755
--- a/configure
+++ b/configure
@@ -14578,15 +14578,29 @@ fi
 "all: $ac_dir
 .PHONY: $ac_dir
 $ac_dir: $ac_dir/Makefile dummy
-	@cd $ac_dir && \$(MAKE)
-install:: $ac_dir
+	@cd $ac_dir && \$(MAKE)"
+
+    wine_fn_has_flag install-lib $ac_flags || wine_fn_has_flag install-dev $ac_flags || return
+
+    wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
+"install:: $ac_dir
 	@cd $ac_dir && \$(MAKE) install
-install-lib:: $ac_dir
-	@cd $ac_dir && \$(MAKE) install-lib
-install-dev:: $ac_dir
-	@cd $ac_dir && \$(MAKE) install-dev
 uninstall:: $ac_dir/Makefile
 	@cd $ac_dir && \$(MAKE) uninstall"
+
+    if wine_fn_has_flag install-lib $ac_flags
+    then
+        wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
+"install-lib:: $ac_dir
+	@cd $ac_dir && \$(MAKE) install-lib"
+    fi
+
+    if wine_fn_has_flag install-dev $ac_flags
+    then
+        wine_fn_append_rule ALL_MAKEFILE_DEPENDS \
+"install-dev:: $ac_dir
+	@cd $ac_dir && \$(MAKE) install-dev"
+    fi
 }
 
 wine_fn_config_lib ()
@@ -15416,7 +15430,7 @@ wine_fn_config_dll winemapi enable_winemapi
 wine_fn_config_dll winemp3.acm enable_winemp3_acm
 wine_fn_config_dll winenas.drv enable_winenas_drv
 wine_fn_config_dll wineoss.drv enable_wineoss_drv
-wine_fn_config_dll wineps.drv enable_wineps_drv
+wine_fn_config_dll wineps.drv enable_wineps_drv install-lib
 wine_fn_config_dll wineps16.drv16 enable_win16
 wine_fn_config_dll wineqtdecoder enable_wineqtdecoder
 wine_fn_config_dll winequartz.drv enable_winequartz_drv
@@ -15463,12 +15477,12 @@ wine_fn_config_dll xinput9_1_0 enable_xinput9_1_0
 wine_fn_config_dll xmllite enable_xmllite
 wine_fn_config_test dlls/xmllite/tests xmllite_test
 wine_fn_config_makefile documentation enable_documentation
-wine_fn_config_makefile fonts enable_fonts
-wine_fn_config_makefile include enable_include
+wine_fn_config_makefile fonts enable_fonts install-lib
+wine_fn_config_makefile include enable_include install-dev
 wine_fn_config_makefile libs/port enable_libs_port
-wine_fn_config_makefile libs/wine enable_libs_wine
+wine_fn_config_makefile libs/wine enable_libs_wine install-dev,install-lib
 wine_fn_config_makefile libs/wpp enable_libs_wpp
-wine_fn_config_makefile loader enable_loader
+wine_fn_config_makefile loader enable_loader install-lib
 wine_fn_config_program aspnet_regiis enable_aspnet_regiis install
 wine_fn_config_program attrib enable_attrib install
 wine_fn_config_program cabarc enable_cabarc install
@@ -15544,8 +15558,8 @@ wine_fn_config_program write enable_write install,po
 wine_fn_config_program wscript enable_wscript install
 wine_fn_config_test programs/wscript/tests wscript.exe_test
 wine_fn_config_program xcopy enable_xcopy install,po
-wine_fn_config_makefile server enable_server
-wine_fn_config_tool tools
+wine_fn_config_makefile server enable_server install-lib
+wine_fn_config_tool tools install-dev,install-lib
 wine_fn_config_tool tools/widl
 wine_fn_config_tool tools/winebuild
 wine_fn_config_tool tools/winedump
diff --git a/configure.ac b/configure.ac
index 04166e1..81a32f5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2881,7 +2881,7 @@ WINE_CONFIG_DLL(winemapi)
 WINE_CONFIG_DLL(winemp3.acm)
 WINE_CONFIG_DLL(winenas.drv)
 WINE_CONFIG_DLL(wineoss.drv)
-WINE_CONFIG_DLL(wineps.drv)
+WINE_CONFIG_DLL(wineps.drv,,[install-lib])
 WINE_CONFIG_DLL(wineps16.drv16,enable_win16)
 WINE_CONFIG_DLL(wineqtdecoder)
 WINE_CONFIG_DLL(winequartz.drv)
@@ -2928,12 +2928,12 @@ WINE_CONFIG_DLL(xinput9_1_0)
 WINE_CONFIG_DLL(xmllite)
 WINE_CONFIG_TEST(dlls/xmllite/tests)
 WINE_CONFIG_MAKEFILE([documentation])
-WINE_CONFIG_MAKEFILE([fonts])
-WINE_CONFIG_MAKEFILE([include])
+WINE_CONFIG_MAKEFILE([fonts],,[install-lib])
+WINE_CONFIG_MAKEFILE([include],,[install-dev])
 WINE_CONFIG_MAKEFILE([libs/port])
-WINE_CONFIG_MAKEFILE([libs/wine])
+WINE_CONFIG_MAKEFILE([libs/wine],,[install-dev,install-lib])
 WINE_CONFIG_MAKEFILE([libs/wpp])
-WINE_CONFIG_MAKEFILE([loader])
+WINE_CONFIG_MAKEFILE([loader],,[install-lib])
 WINE_CONFIG_PROGRAM(aspnet_regiis,,[install])
 WINE_CONFIG_PROGRAM(attrib,,[install])
 WINE_CONFIG_PROGRAM(cabarc,,[install])
@@ -3009,8 +3009,8 @@ WINE_CONFIG_PROGRAM(write,,[install,po])
 WINE_CONFIG_PROGRAM(wscript,,[install])
 WINE_CONFIG_TEST(programs/wscript/tests)
 WINE_CONFIG_PROGRAM(xcopy,,[install,po])
-WINE_CONFIG_MAKEFILE([server])
-WINE_CONFIG_TOOL(tools)
+WINE_CONFIG_MAKEFILE([server],,[install-lib])
+WINE_CONFIG_TOOL(tools,[install-dev,install-lib])
 WINE_CONFIG_TOOL(tools/widl)
 WINE_CONFIG_TOOL(tools/winebuild)
 WINE_CONFIG_TOOL(tools/winedump)
diff --git a/tools/make_makefiles b/tools/make_makefiles
index f662e2a..6d7cd36 100755
--- a/tools/make_makefiles
+++ b/tools/make_makefiles
@@ -327,6 +327,11 @@ sub parse_makefile($)
             push @{$make{"=flags"}}, "staticimplib" if $var eq "IMPLIB_SRCS";
             next;
         }
+        if (/(install-lib|install-dev)\s*:/)
+        {
+            push @{$make{"=flags"}}, $1;
+            next;
+        }
         if (/^\s*(TOPSRCDIR|TOPOBJDIR|SRCDIR|VPATH)\s*=\s*(.*)/)
         {
             die "Variable $1 in $file.in is obsolete";




More information about the wine-cvs mailing list