Fix and update Cmake build.
Update config.pl
This commit is contained in:
parent
7bedf4353b
commit
82bb9b1f2f
@ -471,10 +471,14 @@ set( DEVELOPMENT_FILES
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/configure.in"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-9.sln"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-10.sln"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-12.sln"
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-13.sln"
|
||||
)
|
||||
set( DEVELOPMENT_DIRECTORIES
|
||||
"3rdparty"
|
||||
"conf/import-tmpl"
|
||||
"conf/msg_conf/import-tmpl"
|
||||
"db/import-tmpl"
|
||||
"src"
|
||||
"vcproj-9"
|
||||
"vcproj-10"
|
||||
@ -538,6 +542,8 @@ if( INSTALL_COMPONENT_RUNTIME )
|
||||
# templates
|
||||
set( _TEMPLATES
|
||||
"conf/import-tmpl" "conf/import"
|
||||
"conf/msg_conf/import-tmpl" "conf/msg_conf/import"
|
||||
"db/import-tmpl" "db/import"
|
||||
)
|
||||
set( INSTALL_TEMPLATES_FILE "${CMAKE_CURRENT_BINARY_DIR}/InstallTemplates.cmake" )
|
||||
file( WRITE "${INSTALL_TEMPLATES_FILE}"
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# setup
|
||||
#
|
||||
set( SERVER_CHAR_SOURCE_DIR ${SERVER_CHAR_SOURCE_DIR} CACHE INTERNAL "" )
|
||||
set( SERVER_CHAR_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "" )
|
||||
|
||||
|
||||
#
|
||||
|
@ -61,10 +61,12 @@ sub GetArgs {
|
||||
'C=i' => \$sClean, #Clean (like force but remove before adding)
|
||||
'target=s' => \$sTarget, #Target (wich setup to run)
|
||||
'Force=i' => \$sForce, #Force (bypass verification)
|
||||
'OS=s' => \$sOS, #OS (specify the os you wish to use)
|
||||
'help!' => \$sHelp,
|
||||
) or $sHelp=1; #display help if invalid option
|
||||
my $sValidTarget = "All|Conf|DB|Inst|Dump";
|
||||
|
||||
|
||||
|
||||
if( $sHelp ) {
|
||||
print "Incorect option specified, available option are:\n"
|
||||
."\t --f filename => file (specify desiredconf to use)\n"
|
||||
@ -72,6 +74,7 @@ sub GetArgs {
|
||||
."\t --C => Clean (remove file, db, user before adding new)\n"
|
||||
."\t --target => target (specify wich setup to run [$sValidTarget])\n"
|
||||
."\t --Force => Force (bypass verification)\n";
|
||||
."\t --OS => (specify the os you wish to use and avoid check)";
|
||||
exit;
|
||||
}
|
||||
unless($sTarget =~ /$sValidTarget/i){
|
||||
@ -179,20 +182,30 @@ sub EnableCoredump {
|
||||
|
||||
sub GetOS {
|
||||
#yes we could $^0 or uname -r but $^0 only give perl binary build OS and uname hmm...
|
||||
my @aSupportedOS = ("Debian","Ubuntu","Fedora","CentOs","FreeBSD");
|
||||
my $sOSregex = join("|",@aSupportedOS);
|
||||
until($sOS =~ /$sOSregex/i){
|
||||
print "Please enter your OS:[$sOSregex] or enter 'quit' to exit\n";
|
||||
$sOS = <>; chomp($sOS);
|
||||
last if($sOS eq "quit");
|
||||
}
|
||||
open PIPE,"lsb_release -i |" or die $!;
|
||||
my $sDistri = <PIPE>;
|
||||
if($sDistri){
|
||||
my @aDist = split(":",$sDistri);
|
||||
$sDistri = $aDist[1];
|
||||
$sDistri =~ s/^\s+|\s+$//g;
|
||||
$sOS = $sDistri;
|
||||
}
|
||||
else {
|
||||
my @aSupportedOS = ("Debian","Ubuntu","Fedora","CentOs","FreeBSD");
|
||||
my $sOSregex = join("|",@aSupportedOS);
|
||||
until($sOS =~ /$sOSregex/i){
|
||||
print "Please enter your OS:[$sOSregex] or enter 'quit' to exit\n";
|
||||
$sOS = <>; chomp($sOS);
|
||||
last if($sOS eq "quit");
|
||||
}
|
||||
}
|
||||
return $sOS;
|
||||
}
|
||||
|
||||
sub InstallSoft {
|
||||
print "\n Starting InstallSoft \n";
|
||||
print "This autoinstall feature is experimental, package name varies from distri and version, couldn't support them all\n";
|
||||
$sOS = GetOS();
|
||||
$sOS = GetOS() unless $sOS;
|
||||
if($sOS eq "quit"){ print "Skipping Software installation\n"; return; }
|
||||
elsif($sOS =~ /Ubuntu|Debian/i) { #tested on ubuntu 12.10,13.10
|
||||
my @aListSoft = ("gcc","gdb","zlibc","zlib1g-dev","make","git","mysql-client","mysql-server","mysql-common","libmysqlclient-dev","phpmyadmin","libpcre3-dev");
|
||||
|
Loading…
x
Reference in New Issue
Block a user