makefiles: Generate the common rules for programs from configure.

This commit is contained in:
Alexandre Julliard 2013-10-10 11:22:08 +02:00
parent 41c7ba4b5d
commit 237ed76e6d
7 changed files with 22 additions and 33 deletions

1
.gitignore vendored
View File

@ -286,7 +286,6 @@ loader/wine64-preloader
loader/wine_info.plist
msg.pot
po/*.mo
programs/Makeprog.rules
programs/rpcss/epm.h
programs/rpcss/epm_s.c
programs/rpcss/irot.h

2
aclocal.m4 vendored
View File

@ -524,7 +524,7 @@ wine_fn_config_program ()
AS_VAR_IF([$ac_enable],[no],[wine_fn_disabled_rules $ac_clean; return])
wine_fn_all_rules programs/Makeprog.rules
wine_fn_all_rules Make.rules.in
wine_fn_clean_rules $ac_clean
wine_fn_append_rule "$ac_dir: __builddeps__"
wine_fn_pot_rules

18
configure vendored
View File

@ -627,6 +627,7 @@ LIBOBJS
PORCFLAGS
LINGUAS
ALL_TEST_RESOURCES
MAKE_PROG_RULES
MAKE_DLL_RULES
MAKE_IMPLIB_RULES
LDAPLIBS
@ -801,8 +802,7 @@ PACKAGE_NAME
PATH_SEPARATOR
SHELL'
ac_subst_files='MAKE_RULES
MAKE_TEST_RULES
MAKE_PROG_RULES'
MAKE_TEST_RULES'
ac_user_opts='
enable_option_checking
enable_win16
@ -16082,6 +16082,13 @@ all: $deps
"
MAKE_PROG_RULES="
DLLFLAGS = $DLLFLAGS
all: $deps
"
wine_rules_file=conf$$rules.make
rm -f $wine_rules_file
@ -16418,7 +16425,7 @@ wine_fn_config_program ()
wine_fn_disabled_rules $ac_clean; return
fi
wine_fn_all_rules programs/Makeprog.rules
wine_fn_all_rules Make.rules.in
wine_fn_clean_rules $ac_clean
wine_fn_append_rule "$ac_dir: __builddeps__"
wine_fn_pot_rules
@ -16623,10 +16630,6 @@ wine_fn_config_makerules Maketest.rules Make.rules
MAKE_TEST_RULES=Maketest.rules
ac_config_files="$ac_config_files Maketest.rules"
wine_fn_config_makerules programs/Makeprog.rules Make.rules
MAKE_PROG_RULES=programs/Makeprog.rules
ac_config_files="$ac_config_files programs/Makeprog.rules"
wine_fn_config_dll acledit enable_acledit
wine_fn_config_dll aclui enable_aclui implib
@ -18194,7 +18197,6 @@ do
"include/wine") CONFIG_COMMANDS="$CONFIG_COMMANDS include/wine" ;;
"Make.rules") CONFIG_FILES="$CONFIG_FILES Make.rules" ;;
"Maketest.rules") CONFIG_FILES="$CONFIG_FILES Maketest.rules" ;;
"programs/Makeprog.rules") CONFIG_FILES="$CONFIG_FILES programs/Makeprog.rules" ;;
"Makefile") CONFIG_COMMANDS="$CONFIG_COMMANDS Makefile" ;;
"Make.tmp") CONFIG_FILES="$CONFIG_FILES Make.tmp:Make.vars.in:Makefile.in" ;;

View File

@ -2608,7 +2608,7 @@ all: \$(STATICLIB:.a=.cross.a)
")
fi
dnl Dll rules
dnl Dll and program rules
if test -n "$DLLEXT"
then
@ -2626,6 +2626,12 @@ MODULEFLAGS = -shared \$(srcdir)/\$(MAINSPEC) \$(EXTRADLLFLAGS)
all: $deps
")
AC_SUBST(MAKE_PROG_RULES,"
DLLFLAGS = $DLLFLAGS
all: $deps
")
dnl Main makefile
WINE_APPEND_RULE([
@ -2654,7 +2660,6 @@ WINE_CONFIG_EXTRA_DIR(include/wine)
WINE_CONFIG_MAKERULES([Make.rules],[MAKE_RULES])
WINE_CONFIG_MAKERULES([Maketest.rules],[MAKE_TEST_RULES],[Make.rules])
WINE_CONFIG_MAKERULES([programs/Makeprog.rules],[MAKE_PROG_RULES],[Make.rules])
WINE_CONFIG_DLL(acledit)
WINE_CONFIG_DLL(aclui,,[implib])

View File

@ -1,16 +0,0 @@
# Global rules for building a Winelib program -*-Makefile-*-
#
# Each individual makefile should define the following variables:
# MODULE : name of the main module being built
# APPMODE : program mode (-mwindows,-mconsole)
# EXTRALIBS : extra libraries to link in (optional)
# EXTRADEFS : extra symbol definitions, like -DWINELIB (optional)
#
# plus all variables required by the global Make.rules.in
#
DLLFLAGS = @DLLFLAGS@
all: $(MODULE)$(DLLEXT) $(MODULE)$(FAKEEXT)
@MAKE_RULES@

View File

@ -16,8 +16,6 @@ SVG_SRCS = winetest.svg
EXTRA_OBJS = build.res @ALL_TEST_RESOURCES@
@MAKE_PROG_RULES@
clean::
$(RM) build.rc build.nfo
@ -28,3 +26,5 @@ build.nfo:
-$(CC) -v 2>$@
build.res: build.nfo
@MAKE_PROG_RULES@

View File

@ -26,7 +26,6 @@ my %makerules =
(
"MAKE_RULES" => "Make.rules",
"MAKE_TEST_RULES" => "Maketest.rules",
"MAKE_PROG_RULES" => "programs/Makeprog.rules",
);
# Programs that we want to install in the bin directory too
@ -351,7 +350,7 @@ sub parse_makefile($)
if (defined $make{"=flags"} && defined $make{"=rules"} &&
($make{"=rules"} eq "MAKE_DLL_RULES" ||
$make{"=rules"} eq $makerules{"MAKE_PROG_RULES"}))
$make{"=rules"} eq "MAKE_PROG_RULES"))
{
die "Custom install-lib rule not allowed in $file" if defined ${$make{"=flags"}}{"install-lib"};
die "Custom install-dev rule not allowed in $file" if defined ${$make{"=flags"}}{"install-dev"};
@ -472,7 +471,7 @@ sub update_makefiles(@)
$args .= ",[$implib]" if $implib && $implib ne $name;
push @lines, "WINE_CONFIG_DLL($name$args)\n";
}
elsif ($rules eq $makerules{"MAKE_PROG_RULES"})
elsif ($rules eq "MAKE_PROG_RULES")
{
(my $name = $file) =~ s/^programs\/(.*)\/Makefile/$1/;
if ($name =~ /\./)