From e492fcc833446f003e82f8172ba0f1bcc2cdf697 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Sun, 12 Jun 2011 12:03:53 +0200 Subject: [PATCH] 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 86ba73b912b..781e62713db 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 700069d8765..36692f71095 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 04166e12b0e..81a32f5b555 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 f662e2a3163..6d7cd36bd38 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";