diff options
Diffstat (limited to 'source4/build/smb_build/makefile.pm')
-rw-r--r-- | source4/build/smb_build/makefile.pm | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/source4/build/smb_build/makefile.pm b/source4/build/smb_build/makefile.pm index 593fc5d65d..74ca539a09 100644 --- a/source4/build/smb_build/makefile.pm +++ b/source4/build/smb_build/makefile.pm @@ -103,6 +103,24 @@ __EOD__ return $output; } + +############################# +# return makefile fragment for +# target specific rules +sub add_target_flags($$) +{ + my $ctx = shift; + my $name = shift; + my $output = ""; + if ($ctx->{TARGET_CFLAGS}) { +$output .= << "__EOD__"; +$name: TARGET_CFLAGS = $ctx->{TARGET_CFLAGS} +__EOD__ +} + return $output; +} + + sub _prepare_default_rule($) { my $ctx = shift; @@ -215,7 +233,7 @@ sub _prepare_std_CC_rule($$$$$) # Start $comment .$src.$dst: \@echo $message \$\*.$src - \@\$(CC) \$(CC_FLAGS) $flags -c \$< -o \$\@ + \@\$(CC) \$(TARGET_CFLAGS) \$(CC_FLAGS) $flags -c \$< -o \$\@ \@BROKEN_CC\@ -mv `echo \$\@ | sed 's%^.*/%%g'` \$\@ #End $comment ################################### @@ -400,11 +418,14 @@ __EOD__ $output .= << "__EOD__"; library_$ctx->{NAME}: basics bin/lib$ctx->{LIBRARY_NAME} + # End Library $ctx->{NAME} ################################### __EOD__ +$output .= add_target_flags($ctx, "library_" . $ctx->{NAME}); + return $output; } @@ -461,6 +482,8 @@ library_$ctx->{NAME}: basics $ctx->{TARGET} __EOD__ +$output .= add_target_flags($ctx, "library_" . $ctx->{NAME}); + return $output; } @@ -514,6 +537,8 @@ binary_$ctx->{BINARY}: basics bin/$ctx->{BINARY} __EOD__ +$output .= add_target_flags($ctx, "binary_" . $ctx->{BINARY}); + return $output; } |