diff --git a/scripts/build-PC.helper.sh b/scripts/build-PC.helper.sh index 3e25eb2..90f8453 100644 --- a/scripts/build-PC.helper.sh +++ b/scripts/build-PC.helper.sh @@ -93,7 +93,7 @@ function buildLinux64() { function buildWindows32() { CC="i686-w64-mingw32-gcc" - CFLAGS="" + CFLAGS="-Dmain=SDL_main" LDFLAGS="-lgdi32 -lwinmm -limm32 -lversion -lole32 -loleaut32 -lsetupapi -static -lstdc++" doPCBuild windows i386 '.exe' } @@ -101,7 +101,7 @@ function buildWindows32() { function buildWindows64() { CC="x86_64-w64-mingw32-gcc" - CFLAGS="" + CFLAGS="-Dmain=SDL_main" LDFLAGS="-lgdi32 -lwinmm -limm32 -lversion -lole32 -loleaut32 -lsetupapi -static -lstdc++" doPCBuild windows x64 '.exe' } diff --git a/scripts/installer.sh b/scripts/installer.sh index e00cda3..97167b9 100755 --- a/scripts/installer.sh +++ b/scripts/installer.sh @@ -160,14 +160,18 @@ function buildMacOSXSDK() { purple "Building macOS SDK" if [[ ! -d osxcross ]]; then git clone https://github.com/tpoechtrager/osxcross.git + pushd osxcross &> /dev/null + git checkout 26ebac26899650b12b99de86ebbde785de6ca173 + popd &> /dev/null fi pushd osxcross &> /dev/null ./tools/gen_sdk_package_pbzx.sh "${XCODE}" - mv -f MacOSX.* tarballs/. + mv -f MacOSX* tarballs/. # SDK_VERSION= # OSX_VERSION_MIN=${G_MAC_INTEL_MIN} UNATTENDED=1 ./build.sh - mv -f target "${OSX}" + mkdir -p "${OSX}" + mv -f target/* "${OSX}" ./cleanup.sh popd &> /dev/null @@ -176,14 +180,29 @@ function buildMacOSXSDK() { function buildPCDepsM1Hack() { - mkdir -p build-scripts - pushd build-scripts &> /dev/null - rm -f config.guess config.sub - wget https://git.savannah.gnu.org/cgit/config.git/plain/config.guess - wget https://git.savannah.gnu.org/cgit/config.git/plain/config.sub - popd &> /dev/null - cp -f build-scripts/config.guess . - cp -f build-scripts/config.sub . + local TARGET=$1 + + if [[ "${TARGET}" == "macosa64" ]]; then + [[ -f config.guess ]] && mv -f config.guess config.guess.joey + [[ -f config.sub ]] && mv -f config.sub config.sub.joey + mkdir -p build-scripts + pushd build-scripts &> /dev/null + [[ -f config.guess ]] && mv -f config.guess config.guess.joey + [[ -f config.sub ]] && mv -f config.sub config.sub.joey + wget https://git.savannah.gnu.org/cgit/config.git/plain/config.guess + wget https://git.savannah.gnu.org/cgit/config.git/plain/config.sub + popd &> /dev/null + cp -f build-scripts/config.guess . + cp -f build-scripts/config.sub . + else + [[ -f config.guess.joey ]] && mv -f config.guess.joey config.guess + [[ -f config.sub.joey ]] && mv -f config.sub.joey config.sub + mkdir -p build-scripts + pushd build-scripts &> /dev/null + [[ -f config.guess.joey ]] && mv -f config.guess.joey config.guess + [[ -f config.sub.joey ]] && mv -f config.sub.joey config.sub + popd &> /dev/null + fi } @@ -220,10 +239,10 @@ function buildPCDeps() { # SDL2 purple "Building SDL2 ${TARGET}" if [[ ! -d SDL ]]; then - hg clone http://hg.libsdl.org/SDL + git clone https://github.com/libsdl-org/SDL.git pushd SDL &> /dev/null - hg up release-2.0.14 - buildPCDepsM1Hack + git checkout 25f9ed87ff6947d9576fc9d79dee0784e638ac58 + buildPCDepsM1Hack ${TARGET} popd &> /dev/null fi if [[ ! -e "${PREFIX}/lib/libSDL2.a" ]]; then @@ -235,6 +254,7 @@ function buildPCDeps() { --build=x86_64-linux \ --enable-static \ --disable-shared \ + --disable-video-wayland \ --disable-render-metal \ --disable-video-metal \ --prefix=${PREFIX} @@ -254,7 +274,7 @@ function buildPCDeps() { autoheader automake --force-missing --add-missing autoconf - buildPCDepsM1Hack + buildPCDepsM1Hack ${TARGET} popd &> /dev/null fi if [[ ! -e "${PREFIX}/lib/libmodplug.a" ]]; then @@ -275,10 +295,10 @@ function buildPCDeps() { # SDL_mixer purple "Building SDL_mixer ${TARGET}" if [[ ! -d SDL_mixer ]]; then - hg clone http://hg.libsdl.org/SDL_mixer + git clone https://github.com/libsdl-org/SDL_mixer.git pushd SDL_mixer &> /dev/null - hg up release-2.0.4 - buildPCDepsM1Hack + git checkout da75a58c19de9fedea62724a5f7770cbbe39adf9 + buildPCDepsM1Hack ${TARGET} popd &> /dev/null fi if [[ ! -e "${PREFIX}/lib/libSDL2_mixer.a" ]]; then @@ -294,6 +314,7 @@ function buildPCDeps() { --disable-shared \ --prefix=${PREFIX} \ --with-sdl-prefix=${PREFIX} \ + --disable-sdltest \ --disable-music-cmd \ --disable-music-wave \ --enable-music-mod-modplug \ @@ -335,6 +356,7 @@ function buildSDL12() { purple "Building SDL" if [[ ! -d SDL-1.2 ]]; then + # ***TODO*** Change to git repo & checkout specific version. hg clone http://hg.libsdl.org/SDL SDL-1.2 -r SDL-1.2 fi if [[ ! -e "${PREFIX}/lib/libSDL.a" ]]; then @@ -357,6 +379,7 @@ function buildSDL12() { purple "Building SDL_mixer and libMikMod" if [[ ! -d SDL_mixer-1.2 ]]; then + # ***TODO*** Change to git repo & checkout specific version. hg clone http://hg.libsdl.org/SDL_mixer SDL_mixer-1.2 -r SDL-1.2 fi if [[ ! -e "${PREFIX}/lib/libmikmod.a" ]]; then @@ -539,7 +562,9 @@ function doSudoAskPass() { function download() { local URL=$1 - local FILE=$2 + local FILE= + + tTrim FILE "$2" if [[ -z ${FILE} ]]; then FILE=${URL##*/} @@ -575,6 +600,7 @@ function installAmiga() { purple "Installing Amiga GCC" if [[ ! -d amiga-gcc ]]; then + # ***TODO*** Checkout specific version. git clone https://github.com/bebbo/amiga-gcc.git fi pushd amiga-gcc &> /dev/null @@ -711,6 +737,7 @@ function installIIgs() { ssh-keygen -F gitlab.com || ssh-keyscan gitlab.com > ~/.ssh/known_hosts 2> /dev/null git config --global credential.helper cache git clone https://${G_GOLDEN_GATE_USER}:${G_GOLDEN_GATE_PASS}@gitlab.com/GoldenGate/GoldenGate.git + # ***TODO*** Checkout specific version. if [ ! -d GoldenGate ]; then tBoldBox tRED "Unable to clone the GoldenGate repository!" echo "Must be a paying member of the GoldenGate project!" @@ -779,6 +806,7 @@ function installIIgs() { if [[ ! -d gsplus ]]; then purple "Building GSplus" git clone https://github.com/digarok/gsplus.git + # ***TODO*** Checkout specific version. mkdir gsplus/build pushd gsplus/build &> /dev/null cmake .. @@ -812,6 +840,7 @@ function installIIgs() { if [[ ! -d cadius ]]; then purple "Building Cadius" git clone https://github.com/mach-kernel/cadius.git + # ***TODO*** Checkout specific version. pushd cadius &> /dev/null make if [[ ! -e bin/release/cadius ]]; then @@ -1059,9 +1088,8 @@ function mainMenu() { local WHAT= local CHOICE="x" - checkInstalled - if [[ ! -z ${G_AUTOMATED} ]]; then + checkInstalled for (( X=0; X<=$(( ${TOTAL}-1 )); X++ )); do CHOICE="install${G_ITEMS[$X]}" echo "" @@ -1070,6 +1098,7 @@ function mainMenu() { done else while [[ "${CHOICE}" != "" ]]; do + checkInstalled MENU=() for (( X=0; X<=$(( ${TOTAL}-1 )); X++ )); do MENU+=( "${G_ITEMS[$X]}" ) @@ -1180,7 +1209,6 @@ function start() { libssl-dev \ libtool \ libxml2-dev \ - linux-modules-extra-$(uname -r) \ llvm-dev \ make \ mercurial \