summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog3
-rwxr-xr-xdh_illumos_make14
2 files changed, 15 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog
index 68d94fe..970829b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,8 +2,9 @@ dh-illumos (8) UNRELEASED; urgency=low
* Depends on make, not sunmake
* Set i386_XARCH in Makefile to allow overriding
+ * dh_illumos_make: option --native to use native compiler.
- -- Igor Pashev <pashev.igor@gmail.com> Sat, 01 Sep 2012 19:59:53 +0000
+ -- Igor Pashev <pashev.igor@gmail.com> Sat, 01 Sep 2012 20:28:55 +0000
dh-illumos (7) unstable; urgency=low
diff --git a/dh_illumos_make b/dh_illumos_make
index f4445dc..d26f689 100755
--- a/dh_illumos_make
+++ b/dh_illumos_make
@@ -13,7 +13,7 @@ use Debian::Debhelper::Dh_Lib;
B<dh_illumos_make> [S<I<debhelper options>>] [B<-m>I<make program>]
[B<-t>I<target>] [B<--debug>] [B<--without-ctf>] [B<--without-mcs>]
-[B<--no-onbld>]
+[B<--no-onbld>] [B<--native>]
[directories]
=head1 DESCRIPTION
@@ -81,6 +81,13 @@ and useful for building C<onbld> itself. Otherwise F<illumos-gate/usr/src/tools>
must be unpacked and built before any other component.
If this option is given, F<bldenv.sh> is called with C<-t> option instead of C<+t>.
+=item B<--native>
+
+Some components have both 32- and 64-bit versions, others have no architecture
+specific versions. Such components assumed to be 32-bit, and on 64-bit system
+it is incorrect. With this option C<dh_illumos_make> will build those
+components using system native compiler.
+
=back
=head1 NOTES
@@ -103,6 +110,7 @@ init(options => {
'without-ctf' => \$dh{'WITHOUT_CTF'},
'without-mcs' => \$dh{'WITHOUT_MCS'},
'no-onbld' => \$dh{'NO_ONBLD'},
+ 'native' => \$dh{'NATIVE'},
});
my @dirs = ('usr/src');
@@ -135,6 +143,10 @@ my $env = '';
$env .= ' MCS=:' if $dh{'WITHOUT_MCS'};
$env .= ' CTFCONVERT=:' if $dh{'WITHOUT_CTF'};
$env .= ' CTFMERGE=:' if $dh{'WITHOUT_CTF'};
+
+if ($dh{'NATIVE'}) {
+ $env .= ' i386_XARCH=';
+}
foreach (@dirs) {
complex_doit(qq!cd illumos-gate && $env /usr/bin/ksh93 bldenv.sh $opts env.sh -c "cd $_ && $dh{'MAKE'} $dh{'TARGET'}"!);
}