summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml37
-rw-r--r--windres.patch13
2 files changed, 40 insertions, 10 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 8a6585c..2486715 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,22 +1,37 @@
stages:
- build
-."win32":
- image: fedora:34
+"win32":
+ image: jak891/mxe-win-build:1.0.1
stage: build
+ variables:
+ CROSS: i686-w64-mingw32.shared
script:
- - dnf install -y git autoconf automake mingw32-gcc python2 which pkgconfig
- - dnf install -y mingw-w64-tools mingw32-SDL_image mingw32-win-iconv
- - dnf install -y SDL_image-devel SDL_mixer-devel SDL_gfx-devel SDL_ttf-devel libjpeg-devel libpng-devel libvorbis-devel libGLU-devel lua-devel gettext gettext-devel SDL_image SDL_gfx
- - dnf install -y mingw32* SDL* # Extreme remedy
- - git --version
- git clone https://gitlab.com/freedroid/freedroid-src.git freedroid
- cd freedroid
- git checkout master
- git rev-parse HEAD
- - ./autogen.sh
- - mingw32-configure --without-x --disable-dependency-tracking
- - make clean
+ - git apply ../windres.patch || exit 1
+ - export PATH=/mxe/usr/bin:/mxe/usr/x86_64-unknown-linux-gnu/bin:/mxe/usr/${CROSS}/bin:$PATH
+
+ - export AR=${CROSS}-ar
+ - export AS=${CROSS}-as
+ - export LD=${CROSS}-ld
+ - export NM=${CROSS}-nm
+ - export RC=${CROSS}-windres
+ - export WINDRES=${CROSS}-windres
+ - export ADD2LINE=${CROSS}-addr2line
+ - export STRIP=${CROSS}-strip
+ - export CC=${CROSS}-gcc
+ - export CXX=${CROSS}-g++
+ - export CXXCPP=${CROSS}-cpp
+ - export CPP=${CROSS}-cpp
+ - export RANLIB=${CROSS}-ranlib
+ - export PKG_CONFIG="/mxe/usr/bin/${CROSS}-pkg-config"
+ - export AM_MAKEFLAGS="WINDRES=${CROSS}-windres"
+ - WINDRES=${CROSS}-windres autoreconf -i || exit 1
+ - ./configure --disable-opengl --prefix=/mxe/usr/bin/ --host=i686-w64-mingw32.shared --without-x --enable-nls LIBS="-lintl"
+# - ./configure --build=i686 --host=${CROSS} --target=i686 --disable-dependency-tracking || exit 1
- make all
artifacts:
paths:
@@ -53,6 +68,8 @@ stages:
- mkdir public
- ls
- mv *.AppImage public
+ except:
+ - branches@jak1/freedroid-buildbot
artifacts:
paths:
- "public/"
diff --git a/windres.patch b/windres.patch
new file mode 100644
index 0000000..2cf08cc
--- /dev/null
+++ b/windres.patch
@@ -0,0 +1,13 @@
+diff --git a/win32/Makefile.am b/win32/Makefile.am
+index 7aa2ad226..685f8cf02 100644
+--- a/win32/Makefile.am
++++ b/win32/Makefile.am
+@@ -4,7 +4,7 @@ EXTRA_DIST = freedroidRPG.rc freedroidRPG.ico
+ CLEANFILES = freedroidRPG.coff
+
+ freedroidRPG.coff: freedroidRPG.rc freedroidRPG.ico
+- $(WINDRES) -i freedroidRPG.rc -o freedroidRPG.coff -O COFF
++ i686-w64-mingw32.shared-windres -i freedroidRPG.rc -o freedroidRPG.coff -O COFF
+
+ if WIN32
+ all: freedroidRPG.coff