~quf/tocs3planner

ref: ffad140d2c7952007ff2e7cf03eaa0c851f16d78 tocs3planner/build-tocs3planner.yml -rw-r--r-- 1.8 KiB
ffad140dLukas Himbert better download link 1 year, 4 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# sourcehut build manifest to build tocs3planner.exe
# this isn't in the .builds folder because compiling wxwidgets is quite expensive and i don't want to do it on every commit.
image: archlinux
sources:
 - https://git.sr.ht/~quf/tocs3planner
artifacts:
 - tocs3planner/bin/tocs3planner.exe
tasks:
 - install_packages: |
     cat << EOF | sudo tee -a /etc/pacman.conf
     [multilib]
     Include = /etc/pacman.d/mirrorlist
     EOF
     sudo pacman -Syu --noconfirm --noprogressbar base-devel mingw-w64-toolchain wine p7zip
 - prepare_wineprefix: |
     echo exit | wine cmd
 - make_tests: |
     cd tocs3planner
     CXX="x86_64-w64-mingw32-c++" CXXFLAGS="-Os -static" LDFLAGS="-static -flto" make tests
 - run_tests: |
     cd tocs3planner
     for test in bin/test_*.exe; do
       wine $test > /dev/null
     done
 - get_wxwidgets: |
     curl -L 'https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.5/wxWidgets-3.1.5.7z' -o wxWidgets-3.1.5.7z
     test $(sha256sum wxWidgets-3.1.5.7z | awk '{print $1}') = "99f5382312e4a4aea444ada07341a72c5d4a69b58d8e76586d4b94ede7f5ef4d"
     mkdir wxw-src && cd wxw-src
     7z x ../wxWidgets-3.1.5.7z
 - build_wxwidgets: |
     mkdir wxw-{build,prefix}
     cd wxw-build
     
     CXXFLAGS="-Os -ffunction-sections -fdata-sections" \
     LDFLAGS="-Wl,--gc-sections" \
     ../wxw-src/configure \
        --host=x86_64-w64-mingw32 \
        --build=x86_64-linux \
        --enable-stl \
        --disable-shared \
        --disable-webview \
        --enable-grid \
        --prefix="$HOME/wxw-prefix"
     make -j $(nproc)
     make install
 - build_tocs3planner: |
     cd tocs3planner
     export PATH="$HOME/wxw-prefix/bin:$PATH"
     
     CXX="x86_64-w64-mingw32-c++" \
     CXXFLAGS="-Os -static" \
     LDFLAGS="-static -flto -Wl,--gc-sections" \
     make bin/tocs3planner