Browse Source

Add test build for AmigaOS m68k

pull/602/head
Anders Jenbo 7 years ago
parent
commit
dcdb25bc2a
  1. 11
      .circleci/config.yml
  2. 54
      Packaging/amiga/prep.sh

11
.circleci/config.yml

@ -84,6 +84,16 @@ jobs:
- run: cd build && cmake .. -DBINARY_RELEASE=ON -DCMAKE_TOOLCHAIN_FILE=../CMake/switch/devkita64-libnx.cmake
- run: cd build && cmake --build . -j $(nproc)
- store_artifacts: {path: ./build/devilutionx.nro, destination: devilutionx.nro}
amigaos-m68k:
docker:
- image: amigadev/crosstools:m68k-amigaos
working_directory: ~/repo
steps:
- checkout
- run: Packaging/amiga/prep.sh
- run: cd build && PKG_CONFIG_PATH=/opt/m68k-amigaos/lib/pkgconfig/:/opt/m68k-amigaos/share/pkgconfig/ cmake -DM68K_CPU=68040 -DM68K_FPU=hard -DM68K_COMMON="-s -ffast-math -O3 -noixemul -D__BIG_ENDIAN__ -D__AMIGA__ -fpermissive" ..
- run: cd build && make -j$(nproc)
- store_artifacts: {path: ./build/devilutionx, destination: devilutionx_m68k}
workflows:
version: 2
@ -95,3 +105,4 @@ workflows:
- windows_x86
- linux_x86_64_sdl1
- switch
- amigaos-m68k

54
Packaging/amiga/prep.sh

@ -0,0 +1,54 @@
#!/usr/bin/env bash
# exit when any command fails
set -eo pipefail
#set compiler params
export TARGET='m68k-amigaos'
export SYSROOT=/opt/$TARGET
# ZLIB
wget https://www.zlib.net/zlib-1.2.11.tar.gz
tar -xvf zlib-1.2.11.tar.gz
mkdir -p zlib-1.2.11/build
cd zlib-1.2.11/build
cmake .. -DCMAKE_INSTALL_PREFIX=${SYSROOT} -DM68K_CPU=68040 -DM68K_FPU=hard -DM68K_COMMON="-s -ffast-math -O3 -fno-exceptions -w -fomit-frame-pointer -noixemul -DBIG_ENDIAN -DAMIGA -fpermissive -std=c++14"
cmake --build . --config Release --target install -- -j$(getconf _NPROCESSORS_ONLN)
cd ../..
# SDL1.2
wget https://github.com/AmigaPorts/libSDL12/archive/master.tar.gz -O SDL-1.2.tar.gz
tar -xvf SDL-1.2.tar.gz
cd libSDL12-master
make PREFX=${SYSROOT} PREF=${SYSROOT} -j$(getconf _NPROCESSORS_ONLN)
cp -fvr libSDL.a ${SYSROOT}/lib
cp -fvr include/* ${SYSROOT}/include/
cd ..
# SDL_mixer
wget https://github.com/SDL-mirror/SDL_mixer/archive/SDL-1.2.tar.gz -O SDL_mixer-SDL-1.2.tar.gz
tar -xvf SDL_mixer-SDL-1.2.tar.gz
cd SDL_mixer-SDL-1.2
./autogen.sh
SDL_LIBS='-lSDL -ldebug' SDL_CFLAGS="-I${SYSROOT}/include/SDL -noixemul" ./configure --disable-sdltest --disable-shared --enable-static --host=${TARGET} --prefix=${SYSROOT}
make -j$(getconf _NPROCESSORS_ONLN)
make install
cd ..
# FreeType
wget https://download.savannah.gnu.org/releases/freetype/freetype-2.10.1.tar.gz
tar -xvf freetype-2.10.1.tar.gz
mkdir -p freetype-2.10.1/build
cd freetype-2.10.1/build
cmake .. -DCMAKE_INSTALL_PREFIX=${SYSROOT} -DUNIX=1
cmake --build . --config Release --target install -- -j$(getconf _NPROCESSORS_ONLN)
cd ../..
# SDL_ttf
wget https://github.com/SDL-mirror/SDL_ttf/archive/SDL-1.2.tar.gz -O SDL_ttf-SDL-1.2.tar.gz
tar -xvf SDL_ttf-SDL-1.2.tar.gz
cd SDL_ttf-SDL-1.2
./autogen.sh
SDL_LIBS='-lSDL -ldebug' SDL_CFLAGS="-I${SYSROOT}/include/SDL -noixemul" FT2_CFLAGS="-I${SYSROOT}/include/freetype2" FT2_LIBS="-lfreetype -lzlib" ./configure --disable-shared --enable-static --host=${TARGET} --prefix=${SYSROOT}
make -j$(getconf _NPROCESSORS_ONLN)
make install
Loading…
Cancel
Save