Support out of source build with the wrapper configure.pl script
This commit is contained in:
parent
a15d4127fd
commit
1ed6500cf9
@ -1,22 +1,35 @@
|
|||||||
#!/usr/bin/perl
|
#!/usr/bin/perl
|
||||||
use Switch;
|
use strict;
|
||||||
|
use Cwd 'abs_path';
|
||||||
|
use File::Basename;
|
||||||
|
|
||||||
my $cmakeargs="";
|
my $cmakeargs = "";
|
||||||
foreach $option (@ARGV)
|
|
||||||
|
# Find source root directory
|
||||||
|
# Assume this script is in <srcroot>/cmake
|
||||||
|
my $srcdir = dirname(dirname(abs_path($0)));
|
||||||
|
|
||||||
|
foreach my $option (@ARGV)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (substr ($option, 0, 2) == "--")
|
if (substr ($option, 0, 2) == "--")
|
||||||
{
|
{
|
||||||
$option = substr($option, 2);
|
$option = substr($option, 2);
|
||||||
}
|
}
|
||||||
|
if($option =~ /srcdir/)
|
||||||
|
{
|
||||||
|
$srcdir = substr($option,7);
|
||||||
|
next;
|
||||||
|
}
|
||||||
if($option =~ /help/)
|
if($option =~ /help/)
|
||||||
{
|
{
|
||||||
system("cmake -LH");
|
system("cmake ${srcdir} -LH");
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
if($option =~ /with-plugins=/)
|
if($option =~ /with-plugins=/)
|
||||||
{
|
{
|
||||||
my @plugins= split(/,/, substr($option,13));
|
my @plugins= split(/,/, substr($option,13));
|
||||||
foreach $p (@plugins)
|
foreach my $p (@plugins)
|
||||||
{
|
{
|
||||||
$p =~ s/-/_/g;
|
$p =~ s/-/_/g;
|
||||||
$cmakeargs = $cmakeargs." -DWITH_".uc($p)."=1";
|
$cmakeargs = $cmakeargs." -DWITH_".uc($p)."=1";
|
||||||
@ -60,12 +73,12 @@ foreach $option (@ARGV)
|
|||||||
$cmakeargs = $cmakeargs." -DCMAKE_INSTALL_PREFIX=".$cmake_install_prefix;
|
$cmakeargs = $cmakeargs." -DCMAKE_INSTALL_PREFIX=".$cmake_install_prefix;
|
||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
if ($options =~ /extra-charsets=all/)
|
if ($option =~ /extra-charsets=all/)
|
||||||
{
|
{
|
||||||
$cmakeargs = $cmakeargs." -DWITH_CHARSETS=all";
|
$cmakeargs = $cmakeargs." -DWITH_CHARSETS=all";
|
||||||
next;
|
next;
|
||||||
}
|
}
|
||||||
if ($options =~ /extra-charsets=complex/)
|
if ($option =~ /extra-charsets=complex/)
|
||||||
{
|
{
|
||||||
$cmakeargs = $cmakeargs." -DWITH_CHARSETS=complex";
|
$cmakeargs = $cmakeargs." -DWITH_CHARSETS=complex";
|
||||||
next;
|
next;
|
||||||
@ -74,6 +87,7 @@ foreach $option (@ARGV)
|
|||||||
$option =~ s/-/_/g;
|
$option =~ s/-/_/g;
|
||||||
$cmakeargs = $cmakeargs." -D".$option."=1";
|
$cmakeargs = $cmakeargs." -D".$option."=1";
|
||||||
}
|
}
|
||||||
print("configure.pl : calling cmake . $cmakeargs\n");
|
|
||||||
my $rc = system("cmake . $cmakeargs");
|
print("configure.pl : calling cmake $srcdir $cmakeargs\n");
|
||||||
|
my $rc = system("cmake $srcdir $cmakeargs");
|
||||||
exit($rc);
|
exit($rc);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user