Latest compatible version of Classicube from the original GitHub repository (https://github.com/ClassiCube/ClassiCube) that can be compiled on Classicube for PowerMac PPC running Mac OS X 10.4.
This commit is contained in:
65
misc/build_scripts/buildbot_plugin.sh
Normal file
65
misc/build_scripts/buildbot_plugin.sh
Normal file
@@ -0,0 +1,65 @@
|
||||
#!/bin/bash
|
||||
# This is similar to buildbot.sh but builds plugins for the game instead
|
||||
# Some variables must be set before invoking this script. See buildtestplugin.sh
|
||||
cd $ROOT
|
||||
echo $(pwd)
|
||||
FILES=$(find . -type f -name "*.c" | tr '\n' ' ')
|
||||
FLAGS="-shared -fPIC -O1 -s -std=c99"
|
||||
echo $FILES
|
||||
|
||||
# ----------------------------- compile linux
|
||||
NIX32_CC="gcc -m32"
|
||||
NIX64_CC="gcc -m64"
|
||||
NIX_FLAGS="-nostartfiles -Wl,--entry=0"
|
||||
|
||||
echo "Compiling linux32.."
|
||||
$NIX32_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_nix32.so $FLAGS $NIX_FLAGS
|
||||
|
||||
echo "Compiling linux64.."
|
||||
$NIX64_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_nix64.so $FLAGS $NIX_FLAGS
|
||||
|
||||
# ----------------------------- compile macOS
|
||||
MAC32_CC=~/osx/target/bin/o32-clang
|
||||
MAC64_CC=~/osx/target/bin/o64-clang
|
||||
MAC_FLAGS="-undefined dynamic_lookup"
|
||||
|
||||
echo "Compiling mac32.."
|
||||
$MAC32_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_mac32.dylib $FLAGS $MAC_FLAGS
|
||||
|
||||
echo "Compiling mac64.."
|
||||
$MAC64_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_mac64.dylib $FLAGS $MAC_FLAGS
|
||||
|
||||
# ----------------------------- compile Windows
|
||||
WIN32_CC=i686-w64-mingw32-gcc
|
||||
WIN64_CC=x86_64-w64-mingw32-gcc
|
||||
# TODO: Figure out why we sometimes need this with mingw
|
||||
# If we don't include nostart files for some plugins, get a
|
||||
# ertr000001.o:(.rdata+0x0): undefined reference to `_pei386_runtime_relocator'
|
||||
# Seems to happen if you use exported variables from the game
|
||||
if [ -z "$LITE_MODE" ]; then
|
||||
WIN_FLAGS=""
|
||||
else
|
||||
WIN_FLAGS="-nostartfiles -Wl,--entry=0"
|
||||
fi
|
||||
# NOTE: You also need to install 'mingw-w64-tools' package for gendef
|
||||
|
||||
echo "Compiling win32"
|
||||
rm ClassiCube.exe ClassiCube.def
|
||||
cp ~/client/src/cc-w32-d3d.exe ClassiCube.exe
|
||||
gendef ClassiCube.exe
|
||||
i686-w64-mingw32-dlltool -d ClassiCube.def -l libClassiCube.a -D ClassiCube.exe
|
||||
$WIN32_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_win32.dll $FLAGS $WIN_FLAGS -L . -lClassiCube
|
||||
|
||||
echo "Compiling win64"
|
||||
rm ClassiCube.exe ClassiCube.def
|
||||
cp ~/client/src/cc-w64-d3d.exe ClassiCube.exe
|
||||
gendef ClassiCube.exe
|
||||
x86_64-w64-mingw32-dlltool -d ClassiCube.def -l libClassiCube.a -D ClassiCube.exe
|
||||
$WIN64_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_win64.dll $FLAGS $WIN_FLAGS -L . -lClassiCube
|
||||
|
||||
# ----------------------------- compile raspberry pi
|
||||
RPI_CC=~/rpi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf-gcc-4.8.3
|
||||
RPI_FLAGS="-nostartfiles -Wl,--entry=0"
|
||||
|
||||
echo "Compiling rpi"
|
||||
$RPI_CC $FILES -I ~/client/src/ -I ./src/ -o ${PLUGIN}_rpi.so $FLAGS $RPI_FLAGS
|
||||
4
misc/build_scripts/buildtestplugin.sh
Normal file
4
misc/build_scripts/buildtestplugin.sh
Normal file
@@ -0,0 +1,4 @@
|
||||
#!/bin/bash
|
||||
ROOT=~/plugins/test/
|
||||
PLUGIN=test
|
||||
source ./buildbot_plugin.sh
|
||||
6
misc/build_scripts/readme.md
Normal file
6
misc/build_scripts/readme.md
Normal file
@@ -0,0 +1,6 @@
|
||||
This folder contains build scripts for automatically compiling ClassiCube
|
||||
|
||||
|File|Description|
|
||||
|--------|-------|
|
||||
|buildbot_plugin.sh | Compiles specified plugin for various platforms |
|
||||
|buildtestplugin.sh | Example script for how to use buildbot_plugin.sh |
|
||||
Reference in New Issue
Block a user