mirror of
https://github.com/samba-team/samba.git
synced 2025-01-27 14:04:05 +03:00
r7271: added the ability to specify a target specific set of CFLAGS for
binaries and libraries. This makes it possible to build heimdal with our build system, which means users don't have to suffer two build systems. (This used to be commit a31ec2a750d1e668e8ccdbbcb01762bfbc08cce5)
This commit is contained in:
parent
d26f46f72c
commit
86bcccfba5
@ -23,7 +23,8 @@ my %attribute_types = (
|
||||
"MAJOR_VERSION" => "string",
|
||||
"MINOR_VERSION" => "string",
|
||||
"RELEASE_VERSION" => "string",
|
||||
"ENABLE" => "bool"
|
||||
"ENABLE" => "bool",
|
||||
"TARGET_CFLAGS" => "string"
|
||||
);
|
||||
|
||||
###########################################################
|
||||
|
@ -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;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user