open_toontown_panda3d/dtool/src/build/ctinitproj

129 lines
3.5 KiB
Perl
Executable File

#!/usr/local/bin/perl
if ( $#ARGV != 1 ) {
print "Usage: ctinitproj project-name project-root\n" ;
print " You should already be attached to the project\n" ;
exit print " ex: ctinitproj dtool $DTOOL\n" ;
}
$tool = $ENV{"DTOOL"} ;
if ( $tool eq "" ) {
die "Environment not configured for CTtools" ;
}
require "$tool/include/ctutils.pl" ;
require "$tool/include/ctvspec.pl" ;
require "$tool/include/ctquery.pl" ;
$projname = $ARGV[0] ;
$projroot = &CTUShellEval( $ARGV[1] );
$flav = &CTQueryProj( $projname ) ;
$spec = &CTResolveSpec( $projname, $flav ) ;
# make sure the directory exists
if ( ! -e $projroot ) {
die "Project root ('$projroot') does not exist" ;
}
require "$tool/include/ctcm.pl" ;
# make all the default subdirectories
$item = "$projroot/bin" ;
if ( ! -e $item ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/etc" ;
if ( ! -e $item ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/include" ;
if ( ! -e $item ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/lib" ;
if ( ! -e $item ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/lib/ss" ;
if ( ! -e $item ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/lib/stk" ;
if ( ! -e $item ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/src" ;
if ( ! -e "$projroot/src" ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
$item = "$projroot/src/all" ;
if ( ! -e "$projroot/src/all" ) {
if ( ! &CTCMMkdir( $item, $projname, $spec ) ) {
die "Could not create directory '" . $item . "'\n" ;
}
}
# install the project-wide Makefile
require "$tool/include/ctinstmake.pl" ;
$item = "$projroot/Makefile" ;
&CTInstallMake( "$tool/lib/Makefile.project.template", $item ) ;
if ( ! &CTCMMkelem( $item, $projname, $spec ) ) {
die "Could not make a versioned element of the master makefile\n" ;
}
# now delta everything in
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/src/all" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/src" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/lib/stk" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/lib/ss" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/lib" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/include" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/etc" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot/bin" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}
$item = "$projroot" ;
if ( ! &CTCMDelta( $item, $projname, $spec ) ) {
die "Could not delta '" . $item . "'\n" ;
}