diff options
| author | root <root@dc13.lemmi> | 2020-07-21 10:00:46 +0200 |
|---|---|---|
| committer | root <root@dc13.lemmi> | 2020-07-21 10:00:46 +0200 |
| commit | 1192c4575ea7afdf38e3fa0df4587a08620af11e (patch) | |
| tree | 6910a62487c282d0840d2e668aa7eb40b7c8a3fd /project/setup.sh | |
| parent | 76de8a89f7c1d1b4522eb66e8f89d248e8c1781f (diff) | |
SZS v2.18a
Diffstat (limited to 'project/setup.sh')
| -rw-r--r-- | project/setup.sh | 196 |
1 files changed, 196 insertions, 0 deletions
diff --git a/project/setup.sh b/project/setup.sh new file mode 100644 index 0000000..205ec80 --- /dev/null +++ b/project/setup.sh @@ -0,0 +1,196 @@ +#!/usr/bin/env bash + +revision=0 +[[ $STATIC = 1 ]] || STATIC=0 + +[[ -s revision.sh ]] && . revision.sh + +if [[ -d .svn ]] && which svn >/dev/null 2>&1 +then + revision="$( svn info . | awk '$1=="Revision:" {print $2}' )" + if which svnversion >/dev/null 2>&1 + then + rev="$(svnversion|sed 's/.*://')" + (( ${revision//[!0-9]/} < ${rev//[!0-9]/} )) && revision=$rev + fi + echo "revision=$revision" > revision.sh +fi + +revision_num="${revision//[!0-9]/}" +revision_next=$revision_num +[[ $revision = $revision_num ]] || let revision_next++ + +tim=($(date '+%s %Y-%m-%d %T %Y')) + +have_fuse=0 +[[ $NO_FUSE != 1 && -r /usr/include/fuse.h || -r /usr/local/include/fuse.h ]] \ + && have_fuse=1 + +#--- + +if [[ $M32 = 1 ]] +then + force_m32=1 + libdir=lib + have_fuse=0 + xflags="-m32" + defines=-DFORCE_M32=1 +else + force_m32=0 + libdir=lib64 + xflags= + defines= +fi + +[[ -r /usr/include/bits/fcntl.h ]] \ + && grep -qw fallocate /usr/include/bits/fcntl.h \ + && defines="$defines -DHAVE_FALLOCATE=1" + +[[ -r /usr/include/fcntl.h ]] \ + && grep -qw posix_fallocate /usr/include/fcntl.h \ + && defines="$defines -DHAVE_POSIX_FALLOCATE=1" + +gcc $xflags system.c -o system.tmp && ./system.tmp >Makefile.setup +rm -f system.tmp +SYSTEM=$(awk '$1=="SYSTEM" {print $3}' Makefile.setup) +#echo "SYSTEM=|$SYSTEM|" >&2 + +libpng="-lpng -lz" +case "$SYSTEM" in + mac) + [[ -s /usr/local/lib/libpng.a ]] && libpng="/usr/local/lib/libpng.a -lz" + ;; + + i386) + [[ -s /usr/lib/libpng.a ]] && libpng="/usr/lib/libpng.a -lz" + ;; + + x86_64) + [[ -s /usr/lib64/libpng.a ]] && libpng="/usr/lib64/libpng.a -lz" + ;; +esac + +#----- have_pcre + +have_pcre=0 +pcre_a= +[[ -r /usr/include/pcre.h || -r /usr/local/include/pcre.h ]] && have_pcre=1 + +if (( STATIC && have_pcre )) +then + have_pcre=0 + for lib in /usr/local/$libdir /usr/$libdir /$libdir + do + if [[ -s $lib/libpcre.a ]] + then + have_pcre=1 + pcre_a=$lib/libpcre.a + break; + fi + done +fi +have_pcre=0 + +#-------------------------------------------------- + +INSTALL_PATH=/usr/local + +if [[ -d $INSTALL_PATH/bin ]] +then + HAVE_INSTBIN=1 + INSTBIN=$INSTALL_PATH/bin +else + HAVE_INSTBIN=0 + INSTBIN=/tmp +fi + +if [[ -d $INSTALL_PATH/bin32 ]] +then + HAVE_INSTBIN_32=1 + INSTBIN_32=$INSTALL_PATH/bin32 +else + HAVE_INSTBIN_32=0 + INSTBIN_32=/tmp +fi + +if [[ -d $INSTALL_PATH/bin64 ]] +then + HAVE_INSTBIN_64=1 + INSTBIN_64=$INSTALL_PATH/bin64 +elif [[ -d $INSTALL_PATH/bin-x86_64 ]] +then + HAVE_INSTBIN_64=1 + INSTBIN_64=$INSTALL_PATH/bin-x86_64 +else + HAVE_INSTBIN_64=0 + INSTBIN_64=/tmp +fi + +HAVE_WORK=0 +[[ -d ./work ]] && HAVE_WORK=1 + +HAVE_WORK_SRC=0 +[[ -d ./work/src ]] && HAVE_WORK_SRC=1 + +[[ $NOWIIMM = 1 || $NO_WIIMM = 1 ]] && HAVE_WORK=0 HAVE_WORK_SRC=0 + +HAVE_XSRC=0 +[[ -h xsrc ]] && rm xsrc +if [[ -d xsrc ]] +then + HAVE_XSRC=1 + cat <<- __EOT__ >xsrc/xversion.tmp + #ifndef SZS_X_VERSION_H + #define SZS_X_VERSION_H 1 + + #define XSRC_BASE_VERSION "$1" + #define XSRC_VERSION_NUM "$2" + #define XSRC_VERSION_INT $3 + + #endif // SZS_X_VERSION_H + __EOT__ + diff -N xsrc/xversion.tmp xsrc/xversion.h >/dev/null \ + || mv xsrc/xversion.tmp xsrc/xversion.h +elif [[ ! -a xsrc && -d ../wiimms-szs-tools/xsrc ]] +then + ln -s ../wiimms-szs-tools/xsrc ./xsrc + HAVE_XSRC=1 +fi + +#-------------------------------------------------- + +cat <<- ---EOT--- >>Makefile.setup + + REVISION := $revision + REVISION_NUM := $revision_num + REVISION_NEXT := $revision_next + BINTIME := ${tim[0]} + DATE := ${tim[1]} + TIME := ${tim[2]} + YEAR := ${tim[3]} + + FORCE_M32 := $force_m32 + HAVE_FUSE := $have_fuse + STATIC := $STATIC + XFLAGS += $xflags + DEFINES1 := $defines -DDEBUG_ASSERT=1 + LIBPNG := $libpng + + HAVE_PCRE := $have_pcre + PCRE_A := $pcre_a + + HAVE_INSTBIN := $HAVE_INSTBIN + HAVE_INSTBIN_32 := $HAVE_INSTBIN_32 + HAVE_INSTBIN_64 := $HAVE_INSTBIN_64 + + INSTALL_PATH := $INSTALL_PATH + INSTBIN := $INSTBIN + INSTBIN_32 := $INSTBIN_32 + INSTBIN_64 := $INSTBIN_64 + + HAVE_WORK := $HAVE_WORK + HAVE_WORK_SRC := $HAVE_WORK_SRC + HAVE_XSRC := $HAVE_XSRC + + ---EOT--- + |
