Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
graphicsframework
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Oliver Behnke
graphicsframework
Commits
8cdf4296
Commit
8cdf4296
authored
15 years ago
by
Oliver Bock
Browse files
Options
Downloads
Patches
Plain Diff
Added checkpoint support to build script
parent
2c8c0450
No related branches found
No related tags found
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
build.sh
+598
-386
598 additions, 386 deletions
build.sh
with
598 additions
and
386 deletions
build.sh
+
598
−
386
View file @
8cdf4296
#!/bin/bash
###########################################################################
# Copyright (C) 2008 by Oliver Bock
#
# Copyright (C) 2008
-2009
by Oliver Bock #
# oliver.bock[AT]aei.mpg.de #
# #
# This file is part of Einstein@Home. #
...
...
@@ -20,9 +20,6 @@
# #
###########################################################################
### TODOs #################################################################
# more refactoring (every lib in dedicated function? per traget?)
### globals ###############################################################
...
...
@@ -30,9 +27,32 @@ ROOT=`pwd`
PATH_ORG
=
"
$PATH
"
PATH_MINGW
=
"
$PATH
"
LOGFILE
=
$ROOT
/build.log
TARGET
=
0
TARGET_LINUX
=
1
TARGET_MAC_INTEL
=
2
TARGET_MAC_PPC
=
4
TARGET_WIN32
=
8
TARGET_DOC
=
16
### functions #############################################################
BUILDSTATE
=
0
BS_PREREQUISITES
=
1
BS_PREPARE_TREE
=
2
BS_BUILD_SDL
=
3
BS_BUILD_FREETYPE
=
4
BS_BUILD_LIBXML
=
6
BS_BUILD_OGLFT
=
5
BS_BUILD_BOINC
=
7
BS_PREPARE_MINGW
=
8
BS_BUILD_MINGW
=
9
BS_BUILD_BINUTILS_MINGW
=
10
BS_BUILD_SDL_MINGW
=
11
BS_BUILD_FREETYPE_MINGW
=
12
BS_BUILD_LIBXML_MINGW
=
13
BS_BUILD_OGLFT_MINGW
=
14
BS_BUILD_BOINC_MINGW
=
15
### functions (tools) #############################################################
failure
()
{
...
...
@@ -53,8 +73,77 @@ failure()
exit
1
}
distclean
()
{
cd
$ROOT
||
failure
echo
"Purging build system..."
|
tee
-a
$LOGFILE
rm
-rf
3rdparty
||
failure
rm
-rf
build
||
failure
rm
-rf
install
||
failure
rm
-rf
doc/html
||
failure
rm
-f
doc/
*
.tag
||
failure
rm
-f
.lastbuild
||
failure
rm
-f
.buildstate
||
failure
}
check_last_build
()
{
echo
"Checking previous build target..."
|
tee
-a
$LOGFILE
LASTBUILD
=
`
cat
.lastbuild 2>/dev/null
`
if
[[
(
-f
.lastbuild
)
&&
(
"
$LASTBUILD
"
!=
"
$1
"
)
]]
;
then
cd
$ROOT
||
failure
echo
"Build target changed! Purging build and install trees..."
|
tee
-a
$LOGFILE
rm
-rf
build
>>
$LOGFILE
||
failure
rm
-rf
install
>>
$LOGFILE
||
failure
prepare_tree
||
failure
fi
echo
"
$1
"
>
.lastbuild
||
failure
return
0
}
check_build_state
()
{
echo
"Checking for previous build checkpoints..."
|
tee
-a
$LOGFILE
if
[
!
-f
.buildstate
]
;
then
cd
$ROOT
||
failure
echo
"No previous build checkpoints found! Starting from scratch..."
|
tee
-a
$LOGFILE
else
BUILDSTATE
=
`
cat
$ROOT
/.buildstate 2>/dev/null
`
echo
"Recovering previous build..."
fi
return
0
}
store_build_state
()
{
echo
"Saving build checkpoint..."
|
tee
-a
$LOGFILE
echo
"
$1
"
>
$ROOT
/.buildstate
||
failure
return
0
}
### functions (features) #############################################################
check_prerequisites
()
{
if
[
$BUILDSTATE
-ge
$BS_PREREQUISITES
]
;
then
return
0
fi
echo
"Checking prerequisites..."
|
tee
-a
$LOGFILE
# required toolchain
...
...
@@ -71,53 +160,61 @@ check_prerequisites()
}
prepare_
source_
tree
()
prepare_tree
()
{
echo
"Preparing source tree..."
|
tee
-a
$LOGFILE
mkdir
-p
3rdparty/oglft
>>
$LOGFILE
||
failure
mkdir
-p
3rdparty/boinc
>>
$LOGFILE
||
failure
if
[
$BUILDSTATE
-ge
$BS_PREPARE_TREE
]
;
then
return
0
fi
echo
"Preparing tree..."
|
tee
-a
$LOGFILE
mkdir
-p
3rdparty
>>
$LOGFILE
||
failure
mkdir
-p
install
/bin
>>
$LOGFILE
||
failure
mkdir
-p
install
/include
>>
$LOGFILE
||
failure
mkdir
-p
install
/lib
>>
$LOGFILE
||
failure
store_build_state
$BS_PREPARE_TREE
return
0
}
prepare_
build_tree
()
prepare_
mingw
()
{
echo
"Preparing build tree..."
|
tee
-a
$LOGFILE
mkdir
-p
build/sdl
>>
$LOGFILE
||
failure
mkdir
-p
build/freetype2
>>
$LOGFILE
||
failure
mkdir
-p
build/libxml2
>>
$LOGFILE
||
failure
mkdir
-p
build/oglft
>>
$LOGFILE
||
failure
mkdir
-p
build/boinc
>>
$LOGFILE
||
failure
mkdir
-p
build/framework
>>
$LOGFILE
||
failure
mkdir
-p
build/orc
>>
$LOGFILE
||
failure
mkdir
-p
build/starsphere
>>
$LOGFILE
||
failure
if
[
$BUILDSTATE
-ge
$BS_PREPARE_MINGW
]
;
then
return
0
}
fi
cd
$ROOT
||
failure
prepare_install_tree
()
{
echo
"Preparing install tree..."
|
tee
-a
$LOGFILE
mkdir
-p
install
/bin
>>
$LOGFILE
||
failure
mkdir
-p
install
/include
>>
$LOGFILE
||
failure
mkdir
-p
install
/lib
>>
$LOGFILE
||
failure
echo
"Preparing MinGW source tree..."
|
tee
-a
$LOGFILE
mkdir
-p
3rdparty/mingw/xscripts
>>
$LOGFILE
||
failure
cd
3rdparty/mingw/xscripts
||
failure
if
[
-d
CVS
]
;
then
echo
"Updating MinGW build script..."
|
tee
-a
$LOGFILE
cvs update
-C
>>
$LOGFILE
2>&1
||
failure
else
cd
..
||
failure
echo
"Retrieving MinGW build script (this may take a while)..."
|
tee
-a
$LOGFILE
cvs
-z3
-d
:pserver:anonymous@mingw.cvs.sourceforge.net:/cvsroot/mingw checkout
-P
xscripts
>>
$LOGFILE
2>&1
||
failure
fi
echo
"Preparing MinGW build script..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/mingw/xscripts
||
failure
# note: svn has no force/overwrite switch. the file might not be updated when patched
patch x86-mingw32-build.sh.conf <
$ROOT
/patches/x86-mingw32-build.sh.conf.patch
>>
$LOGFILE
||
failure
chmod
+x x86-mingw32-build.sh
>>
$LOGFILE
||
failure
store_build_state
$BS_PREPARE_MINGW
return
0
}
prepare_
generic
()
prepare_
sdl
()
{
prepare_source_tree
||
failure
prepare_build_tree
||
failure
prepare_install_tree
||
failure
echo
"Preparing SDL..."
|
tee
-a
$LOGFILE
mkdir
-p
$ROOT
/3rdparty/sdl
>>
$LOGFILE
||
failure
mkdir
-p
$ROOT
/build/sdl
>>
$LOGFILE
||
failure
# prepare additional sources
cd
$ROOT
||
failure
mkdir
-p
3rdparty/sdl
>>
$LOGFILE
2>&1
||
failure
cd
$ROOT
/3rdparty/sdl
||
failure
if
[
-d
.svn
]
;
then
echo
"Updating SDL..."
|
tee
-a
$LOGFIL
...
...
@@ -129,6 +226,15 @@ prepare_generic()
svn checkout http://svn.libsdl.org/branches/SDL-1.2
.
>>
$LOGFILE
2>&1
||
failure
fi
return
0
}
prepare_freetype
()
{
echo
"Preparing Freetype2..."
|
tee
-a
$LOGFILE
mkdir
-p
$ROOT
/build/freetype2
>>
$LOGFILE
||
failure
echo
"Retrieving Freetype2 (this may take a while)..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty
||
failure
wget http://mesh.dl.sourceforge.net/sourceforge/freetype/freetype-2.3.5.tar.bz2
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -138,8 +244,18 @@ prepare_generic()
rm
-rf
freetype2
>>
$LOGFILE
2>&1
||
failure
mv
freetype-2.3.5 freetype2
>>
$LOGFILE
2>&1
||
failure
return
0
}
prepare_libxml
()
{
echo
"Preparing libxml2..."
|
tee
-a
$LOGFILE
mkdir
-p
$ROOT
/build/libxml2
>>
$LOGFILE
||
failure
echo
"Retrieving libxml2 (this may take a while)..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty
||
failure
rm
-f
libxml2-sources-2.6.32.tar.gz
>>
$LOGFILE
2>&1
||
failure
wget
--passive-ftp
ftp://xmlsoft.org/libxml2/libxml2-sources-2.6.32.tar.gz
>>
$LOGFILE
2>&1
||
failure
tar
-xzf
libxml2-sources-2.6.32.tar.gz
>>
$LOGFILE
2>&1
||
failure
rm
libxml2-sources-2.6.32.tar.gz
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -147,6 +263,16 @@ prepare_generic()
rm
-rf
libxml2
>>
$LOGFILE
2>&1
||
failure
mv
libxml2-2.6.32 libxml2
>>
$LOGFILE
2>&1
||
failure
return
0
}
prepare_oglft
()
{
echo
"Preparing OGLFT..."
|
tee
-a
$LOGFILE
mkdir
-p
$ROOT
/3rdparty/oglft
>>
$LOGFILE
||
failure
mkdir
-p
$ROOT
/build/oglft
>>
$LOGFILE
||
failure
cd
$ROOT
/3rdparty/oglft
||
failure
if
[
-d
.svn
]
;
then
echo
"Updating OGLFT..."
|
tee
-a
$LOGFILE
...
...
@@ -157,6 +283,14 @@ prepare_generic()
echo
"Retrieving OGLFT (this may take a while)..."
|
tee
-a
$LOGFILE
svn checkout http://oglft.svn.sourceforge.net/svnroot/oglft/trunk
.
>>
$LOGFILE
2>&1
||
failure
fi
}
prepare_boinc
()
{
echo
"Preparing BOINC..."
|
tee
-a
$LOGFILE
mkdir
-p
$ROOT
/3rdparty/boinc
>>
$LOGFILE
||
failure
mkdir
-p
$ROOT
/build/boinc
>>
$LOGFILE
||
failure
cd
$ROOT
/3rdparty/boinc
||
failure
if
[
-d
.svn
]
;
then
...
...
@@ -173,35 +307,14 @@ prepare_generic()
}
prepare_win32
()
build_sdl
()
{
cd
$ROOT
||
failure
echo
"Preparing MinGW source tree..."
|
tee
-a
$LOGFILE
mkdir
-p
3rdparty/mingw/xscripts
>>
$LOGFILE
||
failure
cd
3rdparty/mingw/xscripts
||
failure
if
[
-d
CVS
]
;
then
echo
"Updating MinGW build script..."
|
tee
-a
$LOGFILE
cvs update
-C
>>
$LOGFILE
2>&1
||
failure
else
cd
..
||
failure
echo
"Retrieving MinGW build script (this may take a while)..."
|
tee
-a
$LOGFILE
cvs
-z3
-d
:pserver:anonymous@mingw.cvs.sourceforge.net:/cvsroot/mingw checkout
-P
xscripts
>>
$LOGFILE
2>&1
||
failure
fi
echo
"Preparing MinGW build script..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/mingw/xscripts
||
failure
# note: svn has no force/overwrite switch. the file might not be updated when patched
patch x86-mingw32-build.sh.conf <
$ROOT
/patches/x86-mingw32-build.sh.conf.patch
>>
$LOGFILE
||
failure
chmod
+x x86-mingw32-build.sh
>>
$LOGFILE
||
failure
if
[
$BUILDSTATE
-ge
$BS_BUILD_SDL
]
;
then
return
0
}
fi
prepare_sdl
||
failure
build_generic
()
{
echo
"Building SDL (this may take a while)..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/sdl
||
failure
chmod
+x autogen.sh
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -217,6 +330,19 @@ build_generic()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed SDL!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_SDL
||
failure
return
0
}
build_freetype
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_FREETYPE
]
;
then
return
0
fi
prepare_freetype
||
failure
echo
"Building Freetype2 (this may take a while)..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/freetype2
||
failure
chmod
+x autogen.sh
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -229,6 +355,19 @@ build_generic()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed Freetype2!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_FREETYPE
||
failure
return
0
}
build_libxml
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_LIBXML
]
;
then
return
0
fi
prepare_libxml
||
failure
echo
"Building libxml2 (this may take a while)..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/libxml2
||
failure
chmod
+x configure
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -238,6 +377,19 @@ build_generic()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed libxml2!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_LIBXML
||
failure
return
0
}
build_oglft
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_OGLFT
]
;
then
return
0
fi
prepare_oglft
||
failure
echo
"Patching OGLFT..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/oglft
||
failure
# note: svn has no force/overwrite switch. patched files might not be updated
...
...
@@ -255,6 +407,19 @@ build_generic()
cp
liboglft/liboglft.a
$ROOT
/install/lib
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed OGLFT!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_OGLFT
||
failure
return
0
}
build_boinc
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_BOINC
]
;
then
return
0
fi
prepare_boinc
||
failure
echo
"Configuring BOINC..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/boinc
||
failure
chmod
+x _autosetup
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -275,12 +440,16 @@ build_generic()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed BOINC!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_BOINC
||
failure
return
0
}
build_mingw
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_MINGW
]
;
then
return
0
fi
TARGET_HOST
=
i586-pc-mingw32
echo
"Building MinGW (this will take quite a while)..."
|
tee
-a
$LOGFILE
...
...
@@ -288,13 +457,14 @@ build_mingw()
cd
$ROOT
/3rdparty/mingw/xscripts
||
failure
./x86-mingw32-build.sh
--unattended
$TARGET_HOST
>>
$LOGFILE
2>&1
||
failure
store_build_state
$BS_BUILD_MINGW
return
0
}
prepare_win32_environment
()
set_mingw
()
{
echo
"Preparing MinGW cross-compile environment..."
|
tee
-a
$LOGFILE
# general config
PREFIX
=
$ROOT
/install
TARGET_HOST
=
i586-pc-mingw32
BUILD_HOST
=
i386-linux
...
...
@@ -304,8 +474,14 @@ prepare_win32_environment()
}
build_
generic_win32
()
build_
sdl_mingw
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_SDL_MINGW
]
;
then
return
0
fi
prepare_sdl
||
failure
echo
"Patching SDL..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/sdl/src/video/wincommon
||
failure
# patch: amend window class name (required by BOINC v6 screensaver!)
...
...
@@ -326,6 +502,19 @@ build_generic_win32()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed SDL!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_SDL_MINGW
||
failure
return
0
}
build_freetype_mingw
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_FREETYPE_MINGW
]
;
then
return
0
fi
prepare_freetype
||
failure
echo
"Patching Freetype2..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/freetype2/builds
||
failure
# patch: deactivating invocation of apinames (would run win32 binary on linux host)
...
...
@@ -347,6 +536,19 @@ build_generic_win32()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed Freetype2!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_FREETYPE_MINGW
||
failure
return
0
}
build_libxml_mingw
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_LIBXML_MINGW
]
;
then
return
0
fi
prepare_libxml
||
failure
echo
"Building libxml2 (this may take a while)..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/libxml2
||
failure
chmod
+x configure
>>
$LOGFILE
2>&1
||
failure
...
...
@@ -361,6 +563,19 @@ build_generic_win32()
make
install
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed libxml2!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_LIBXML_MINGW
||
failure
return
0
}
build_oglft_mingw
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_OGLFT_MINGW
]
;
then
return
0
fi
prepare_oglft
||
failure
echo
"Patching OGLFT..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/oglft
||
failure
# note: svn has no force/overwrite switch. patched files might not be updated
...
...
@@ -379,6 +594,18 @@ build_generic_win32()
cp
liboglft/liboglft.a
$ROOT
/install/lib
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed OGLFT!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_OGLFT_MINGW
||
failure
return
0
}
build_boinc_win32
()
{
if
[
$BUILDSTATE
-ge
$BS_BUILD_BOINC_MINGW
]
;
then
return
0
fi
prepare_boinc
||
failure
echo
"Patching BOINC..."
|
tee
-a
$LOGFILE
cd
$ROOT
/3rdparty/boinc/lib
||
failure
# patch: fix a couple of BOINC vs. MinGW issues
...
...
@@ -421,12 +648,19 @@ build_generic_win32()
cp
$ROOT
/3rdparty/boinc/lib/parse.h
$ROOT
/install/include/boinc
>>
$LOGFILE
2>&1
||
failure
cp
$ROOT
/3rdparty/boinc/lib/util.h
$ROOT
/install/include/boinc
>>
$LOGFILE
2>&1
||
failure
echo
"Successfully built and installed BOINC!"
|
tee
-a
$LOGFILE
store_build_state
$BS_BUILD_BOINC_MINGW
||
failure
return
0
}
build_starsphere
()
{
# make sure ORC is always compiled for host platform (it's exexuted during starsphere build!)
echo
"Preparing Starsphere..."
|
tee
-a
$LOGFILE
mkdir
-p
$ROOT
/build/orc
>>
$LOGFILE
||
failure
mkdir
-p
$ROOT
/build/framework
>>
$LOGFILE
||
failure
mkdir
-p
$ROOT
/build/starsphere
>>
$LOGFILE
||
failure
export
PATH
=
$PATH_ORG
echo
"Building Starsphere [ORC]..."
|
tee
-a
$LOGFILE
...
...
@@ -481,8 +715,12 @@ build_starsphere()
build_linux
()
{
echo
"Important for an official build: let CC and CXX point to gcc/g++ 4.0.3!"
build_generic
||
failure
build_starsphere
||
failure
build_sdl
||
failure
build_freetype
||
failure
build_libxml
||
failure
build_oglft
||
failure
build_boinc
||
failure
build_starsphere
$1
$2
||
failure
return
0
}
...
...
@@ -490,7 +728,11 @@ build_linux()
build_mac
()
{
build_generic
$1
||
failure
build_sdl
$1
||
failure
build_freetype
||
failure
build_libxml
||
failure
build_oglft
||
failure
build_boinc
$1
||
failure
build_starsphere
$1
||
failure
return
0
...
...
@@ -499,51 +741,23 @@ build_mac()
build_win32
()
{
prepare_win32
||
failure
export
CFLAGS
=
"-mms-bitfields
$CFLAGS
"
export
CXXFLAGS
=
"-mms-bitfields
$CXXFLAGS
"
prepare_mingw
||
failure
build_mingw
||
failure
prepare_win32_environment
||
failure
build_generic_win32
||
failure
set_mingw
||
failure
build_sdl_mingw
||
failure
build_freetype_mingw
||
failure
build_libxml_mingw
||
failure
build_oglft_mingw
||
failure
build_boinc_mingw
||
failur
build_starsphere
$TARGET_WIN32
||
failure
return
0
}
distclean
()
{
cd
$ROOT
||
failure
echo
"Purging build system..."
|
tee
-a
$LOGFILE
rm
-rf
3rdparty
||
failure
rm
-rf
build
||
failure
rm
-rf
install
||
failure
rm
-rf
doc/html
||
failure
rm
-f
doc/
*
.tag
||
failure
rm
-f
.lastbuild
||
failure
}
check_last_build
()
{
echo
"Checking previous build target..."
|
tee
-a
$LOGFILE
LASTBUILD
=
`
cat
.lastbuild 2>/dev/null
`
if
[[
(
-f
.lastbuild
)
&&
(
"
$LASTBUILD
"
!=
"
$1
"
)
]]
;
then
cd
$ROOT
||
failure
echo
"Build target changed! Purging build and install trees..."
|
tee
-a
$LOGFILE
rm
-rf
build
>>
$LOGFILE
||
failure
rm
-rf
install
>>
$LOGFILE
||
failure
fi
echo
"
$1
"
>
.lastbuild
||
failure
return
0
}
print_usage
()
{
cd
$ROOT
...
...
@@ -567,12 +781,6 @@ print_usage()
### main control ##########################################################
TARGET_LINUX
=
1
TARGET_MAC_INTEL
=
2
TARGET_MAC_PPC
=
4
TARGET_WIN32
=
8
TARGET_DOC
=
16
echo
"************************************"
|
tee
-a
$LOGFILE
echo
"Starting new build!"
|
tee
-a
$LOGFILE
echo
"
`
date
`
"
|
tee
-a
$LOGFILE
...
...
@@ -590,21 +798,25 @@ case "$1" in
TARGET
=
$TARGET_LINUX
check_last_build
"
$1
"
||
failure
echo
"Building linux version:"
|
tee
-a
$LOGFILE
check_build_state
||
failure
;;
"--mac-intel"
)
TARGET
=
$TARGET_MAC_INTEL
check_last_build
"
$1
"
||
failure
echo
"Building mac (Intel) version:"
|
tee
-a
$LOGFILE
check_build_state
||
failure
;;
"--mac-ppc"
)
TARGET
=
$TARGET_MAC_PPC
check_last_build
"
$1
"
||
failure
echo
"Building mac (PPC) version:"
|
tee
-a
$LOGFILE
check_build_state
||
failure
;;
"--win32"
)
TARGET
=
$TARGET_WIN32
check_last_build
"
$1
"
||
failure
echo
"Building win32 version:"
|
tee
-a
$LOGFILE
check_build_state
||
failure
;;
"--doc"
)
TARGET
=
$TARGET_DOC
...
...
@@ -631,7 +843,7 @@ esac
case
$TARGET
in
$TARGET_LINUX
)
check_prerequisites
||
failure
prepare_
generic
||
failure
prepare_
tree
||
failure
build_linux
||
failure
;;
$TARGET_MAC_INTEL
)
...
...
@@ -649,19 +861,19 @@ case $TARGET in
failure
fi
check_prerequisites
||
failure
prepare_
generic
||
failure
prepare_
tree
||
failure
build_mac
$TARGET_MAC_INTEL
||
failure
;;
$TARGET_MAC_PPC
)
export
CFLAGS
=
-mcpu
=
G3
||
failure
export
CXXFLAGS
=
-mcpu
=
G3
||
failure
check_prerequisites
||
failure
prepare_
generic
||
failure
prepare_
tree
||
failure
build_mac
$TARGET_MAC_PPC
||
failure
;;
$TARGET_WIN32
)
check_prerequisites
||
failure
prepare_
generic
||
failure
prepare_
tree
||
failure
build_win32
||
failure
;;
$TARGET_DOC
)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment