flatpak/com.vscodium.codium/tool.DLang/com.vscodium.codium.tool.DL...

436 lines
24 KiB
YAML

id: "com.vscodium.codium.tool.DLang"
build-extension: true
branch: "21.08"
runtime: com.vscodium.codium
sdk: org.freedesktop.Sdk//21.08
runtime-version: stable
separate-locales: false
build-options:
append-path: /app/tools/DLang/bin
env:
- SOURCE_DATE_EPOCH=1
prefix: /app/tools/DLang
modules:
#- name: libgmp
# sources:
# - type: archive
# url: https://ftp.gnu.org/gnu/gmp/gmp-6.2.1.tar.lz
# sha256: 2c7f4f0d370801b2849c48c9ef3f59553b5f1d3791d070cffb04599f9fc67b41
# config-opts:
# - --disable-static
# - --enable-shared
# build-options:
# cflags: -flto -Os
# cppflags: -flto -Os
# ldflags: -flto -Os
#- name: libmpfr
# sources:
# - type: archive
# url: https://ftp.gnu.org/gnu/mpfr/mpfr-4.1.0.tar.gz
# sha256: 3127fe813218f3a1f0adf4e8899de23df33b4cf4b4b3831a5314f78e65ffa2d6
# config-opts:
# - --disable-static
# - --enable-shared
# build-options:
# cflags: -flto -Os
# cppflags: -flto -Os
# ldflags: -flto -Os
#- name: libmpc
# sources:
# - type: archive
# url: https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz
# sha256: 17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459
# config-opts:
# - --disable-static
# - --enable-shared
# build-options:
# append-pkg-config-path: /app/tools/DLang/lib/pkgconfig
# cflags: -flto -Os -I/app/tools/DLang/include
# cppflags: -flto -Os
# ldflags: -flto -Os -L/app/tools/DLang/lib
- name: gcc-d
sources:
- type: archive
url: https://ftp.gnu.org/gnu/gcc/gcc-11.1.0/gcc-11.1.0.tar.xz
sha256: 4c4a6fb8a8396059241c2e674b85b351c26a5d678274007f076957afa1cc9ddf
- type: archive
url: https://ftp.gnu.org/gnu/gmp/gmp-6.2.1.tar.lz
sha256: 2c7f4f0d370801b2849c48c9ef3f59553b5f1d3791d070cffb04599f9fc67b41
dest: gmp
- type: archive
url: https://ftp.gnu.org/gnu/mpc/mpc-1.2.1.tar.gz
sha256: 17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459
dest: mpc
- type: archive
url: https://ftp.gnu.org/gnu/mpfr/mpfr-4.1.0.tar.gz
sha256: 3127fe813218f3a1f0adf4e8899de23df33b4cf4b4b3831a5314f78e65ffa2d6
dest: mpfr
- type: shell
commands:
- sed -i 's|m64=../lib64|m64=../lib|' gcc/config/i386/t-linux64
config-opts:
- --disable-bootstrap
- --disable-multilib
- --enable-default-pie
- --enable-default-ssp
- --enable-languages=d,lto
- --enable-libphobos-checking
- --enable-linker-build-id
- --enable-lto
- --enable-nls
- --enable-targets=all
- --enable-threads
- --enable-tls
- --enable-vtable-verify
- --without-binutils
post-install:
- mkdir -p /app/tools/DLang/include/dlang
- ln -s ../../lib/gcc/x86_64-pc-linux-gnu/10.2.0/include/d /app/tools/DLang/include/dlang/gcc
build-options:
cflags: -Os
cppflags: -Os
ldflags: -Os
cleanup:
- /share/info
- /share/man
- name: gdmd
sources:
- type: archive
url: https://github.com/D-Programming-GDC/gdmd/archive/script-0.1.0.tar.gz
sha256: 6c9891b7f2e41d8b6c0e89fab3ad32fb77bb3617760b33a4c23bca49197a026b
- type: shell
commands:
- sed -i 's|prefix = /usr/local|prefix = /app/tools/DLang|' Makefile
buildsystem: simple
build-commands:
- make install
cleanup:
- /share
#- name: ldc
# sources:
# - type: archive
# url: https://github.com/ldc-developers/ldc/releases/download/v1.25.1/ldc-1.25.1-src.tar.gz
# sha256: 0e3716fe9927be91264d1fde5c41071026f6c44262735e9ebda538089b612d40
# - type: archive
# url: https://github.com/ldc-developers/druntime/archive/refs/tags/ldc-v1.25.1.tar.gz
# sha256: 85e339dd778a6c23fdaceac7be4765417932ee80d127e62a4081828ee9571693
# dest: runtime/druntime
# - type: archive
# url: https://github.com/ldc-developers/phobos/archive/refs/tags/ldc-v1.25.0.tar.gz
# sha256: b32a75f0265a7e48f09aef5c798f518a5c22573d156d527893b0663b036ddb09
# dest: runtime/phobos
# buildsystem: cmake-ninja
# builddir: true
# config-opts:
# - -DCMAKE_BUILD_TYPE=Release
# - -DCMAKE_SKIP_RPATH=ON
# - -DINCLUDE_INSTALL_DIR=/app/tools/DLang/include/dlang/ldc
# - -DBUILD_SHARED_LIBS=BOTH
# - -DBUILD_LTO_LIBS=ON
# - -DLDC_WITH_LLD=OFF
# build-options:
# append-ld-library-path: /app/tools/DLang/lib
#- name: libs-fix
# buildsystem: simple
# build-commands:
# - mkdir -p /app/tools/DLang/binexec
# - echo -e '#! /usr/bin/env bash\nLD_LIBRARY_PATH="$(realpath "$(dirname "$0")/../lib"):$LD_LIBRARY_PATH" exec "$(dirname "$0")/../binexec/{{i}}" "$@"' > template.sh
# - for i in /app/tools/DLang/bin/*; do mv -v "$i" "$(dirname "$i")/../binexec"; cat template.sh | sed "s|{{i}}|$(basename "$i")|" > $i; chmod +x "$i"; done
- name: rsync
sources:
- type: archive
url: https://github.com/WayneD/rsync/archive/v3.2.3.tar.gz
sha256: 3127c93d7081db075d1057a44b0bd68ff37f297ba9fe2554043c3e4481ae5056
config-opts:
- --disable-debug
- --disable-md2man
- --disable-xxhash
- --disable-zstd
- --disable-lz4
- name: dub
sources:
- type: archive
url: https://github.com/dlang/dub/archive/refs/tags/v1.26.0.tar.gz
sha256: 53f32a2d4c933bf5743778b710c424f8f0bd0393bb32dc73b9756cf10750ae43
buildsystem: simple
build-commands:
- gdmd -ofdub -release -O -version=DubUseCurl -Isource -L-lcurl @build-files.txt
- ./dub build -c application --combined -b release --compiler=gdc
- find .dub/build/ -type f | grep -v '\.o' | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
#- name: dmd
# sources:
# - &DMD
# type: archive
# url: https://github.com/dlang/dmd/archive/refs/tags/v2.097.0.tar.gz
# sha256: 1f8f1bcc23c2d4d8254b6b0c34cecbeba69195d8b3d5c52c1b2ed68c1dcd3ac0
# # dest: dmd
# #- type: archive
# # url: https://github.com/dlang/druntime/archive/refs/tags/v2.096.0.tar.gz
# # sha256: 7e20f53dd98454eaa97d9629759ceccd150bf48726bb38f13f1821f55e867672
# # dest: druntime
# #- type: archive
# # url: https://github.com/dlang/phobos/archive/refs/tags/v2.096.0.tar.gz
# # sha256: 72e1641f369431cbd63762619de10d1eca386eaa1e9a4bf3a959080dd05d7f84
# # dest: phobos
# buildsystem: simple
# build-commands:
# #- sed -i 's/import dmd.globals;/import dmd.globals;\nimport dmd.glue;/' src/dmd/todt.d
# #- sed -i 's/.deps(\[versionFile, sysconfDirFile, lexer, backend\])/.deps(\[versionFile, sysconfDirFile\])/' src/build.d
# #- sed -i 's/dmdSources.chain(lexer.targets, backend.targets)/dmdSources.chain(sources.lexer, sources.backend)/' src/build.d
# - sed -Ei 's/OVERRIDE_MEMALLOC\W+=\W*[^;]+;/OVERRIDE_MEMALLOC = false;/' src/dmd/root/rmem.d
# - cd src && gdc -o build_run build.d
# - cd src && SYSCONFDIR='/app/tools/DLang/etc/' ./build_run HOST_DMD=gdmd HOST_DMD_KIND=gdc
# #- cd druntime && make -f posix.mak DMD=../generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# #- cd phobos && make -f posix.mak DMD=../generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# # Install dmd
# - mkdir -p /app/tools/DLang/bin
# - install -Dm755 generated/linux/release/*/dmd /app/tools/DLang/bin
# - mkdir -p /app/tools/DLang/etc
# - echo '[Environment32]' > /app/tools/DLang/etc/dmd.conf
# - echo 'DFLAGS=-I/app/tools/DLang/include/dlang/dmd -L-L/app/tools/DLang/lib32 -L--export-dynamic -fPIC' >> /app/tools/DLang/etc/dmd.conf
# - echo '[Environment64]' >> /app/tools/DLang/etc/dmd.conf
# - echo 'DFLAGS=-I/app/tools/DLang/include/dlang/dmd -L-L/app/tools/DLang/lib -L--export-dynamic -fPIC' >> /app/tools/DLang/etc/dmd.conf
# #- install generated/linux/release/*/dmd.conf /app/tools/DLang/etc
- name: dmd
sources:
- type: archive
url: https://github.com/dlang/dmd/archive/refs/tags/v2.097.0.tar.gz
sha256: 1f8f1bcc23c2d4d8254b6b0c34cecbeba69195d8b3d5c52c1b2ed68c1dcd3ac0
dest: dmd
- type: archive
url: https://github.com/dlang/druntime/archive/refs/tags/v2.097.0.tar.gz
sha256: 9de7aaa57da5e8a6ab922ac455e9667b1c8bdd6a0df298662ae908cfa1304836
dest: druntime
- type: archive
url: https://github.com/dlang/phobos/archive/refs/tags/v2.097.0.tar.gz
sha256: 720d4b8c71cfa31411aa94a5040673f384b06f7da6f1233e726224f9d62180e8
dest: phobos
- type: archive
url: https://github.com/dlang/tools/archive/refs/tags/v2.097.0.tar.gz
sha256: 39bfc5e32ec400f8b4c8931e3f7353036f5840f5439acbb746a2272d02a7f5b3
dest: tools
buildsystem: simple
build-commands:
# Prepare
- sed -i 's/.deps(\[versionFile, sysconfDirFile, lexer, backend\])/.deps(\[versionFile, sysconfDirFile\])/' dmd/src/build.d
- sed -i 's/dmdSources.chain(lexer.targets, backend.targets)/dmdSources.chain(sources.lexer, sources.backend)/' dmd/src/build.d
- sed -Ei 's/OVERRIDE_MEMALLOC\W+=\W*[^;]+;/OVERRIDE_MEMALLOC = false;/' dmd/src/dmd/root/rmem.d
# Build
- cd dmd && make -f posix.mak BUILD=release ENABLE_RELEASE=1 HOST_DMD=gdmd HOST_DMD_KIND=gdc
- cd druntime && make -f posix.mak BUILD=release ENABLE_RELEASE=1 HOST_DMD=gdmd HOST_DMD_KIND=gdc
- cd phobos && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1
- cd tools && make -f posix.mak all RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS"
# Install dmd
- mkdir -p /app/tools/DLang/etc/ /app/tools/DLang/libexec
- install -Dm755 dmd/generated/linux/release/*/dmd /app/tools/DLang/libexec
- install -Dm755 dmd/generated/linux/release/*/dmd.conf /app/tools/DLang/etc/
- echo -e '#! /usr/bin/env bash\nexec "$(dirname "$0")/../libexec/dmd" "-conf=$(dirname "$0")/../etc/dmd.conf" "-L-L$(dirname "$0")/../lib/" "-I$(dirname "$0")/../include/dlang/dmd" "$@"' > /app/tools/DLang/bin/dmd
- chmod +x /app/tools/DLang/bin/dmd
# Install druntime
- mkdir -p /app/tools/DLang/include/dlang/dmd
- cp -rav druntime/import/. /app/tools/DLang/include/dlang/dmd/.
- cp -rav druntime/generated/linux/release/*/. /app/tools/DLang/lib/.
# Install phobos
- cp -rav phobos/generated/linux/release/*/. /app/tools/DLang/lib/.
- cp -rav phobos/*.d /app/tools/DLang/include/dlang/dmd/.
- cd phobos && find std etc -type d -print | xargs -I{} mkdir -p /app/tools/DLang/include/dlang/dmd/{}
- cd phobos && find std etc -type f -iname '*.d' -print | xargs -I{} install -Dm644 {} /app/tools/DLang/include/dlang/dmd/{}
# Install tools
- find tools/generated/linux/*/ ! -iname '*.o' -type f -print | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
#- name: dmd-phobos
# sources:
# - type: archive
# url: https://github.com/dlang/phobos/archive/refs/tags/v2.097.0.tar.gz
# sha256: 720d4b8c71cfa31411aa94a5040673f384b06f7da6f1233e726224f9d62180e8
# buildsystem: simple
# build-commands:
# - find std etc -iname '*.d' -type f -print > files.txt
# - cat files.txt | xargs -I{} dmd -of{}.o -c -fPIC {}
# - cat files.txt | xargs -I{} echo {}.o | xargs ar rcs libphobos2.a
# - cat files.txt | xargs -I{} echo {}.o | xargs gcc -shared -o libphobos2.so -fPIC
# - install -Dm755 libphobos2.so /app/tools/DLang/lib
# - install -Dm644 libphobos2.a /app/tools/DLang/lib
# - find std etc -type d -print | xargs -I{} mkdir -p /app/tools/DLang/include/dlang/dmd/{}
# - find std etc -iname '*.d' -type f -print | xargs -I{} install -Dm644 {} /app/tools/DLang/include/dlang/dmd/{}
# #- exit 1
# #- make -f posix.mak
# #- exit 1
#- name: dmd-ldc
# sources: &DMD_SOURCES
# - &DMD
# type: archive
# url: https://github.com/dlang/dmd/archive/refs/tags/v2.096.0.tar.gz
# sha256: 5f0037b87b7da6778e9463b4b00de3cbd08b2c3b52ecc6503eed9b2a2e388e96
# dest: dmd
# #- type: archive
# # url: https://github.com/dlang/druntime/archive/refs/tags/v2.096.0.tar.gz
# # sha256: 7e20f53dd98454eaa97d9629759ceccd150bf48726bb38f13f1821f55e867672
# # dest: druntime
# #- type: archive
# # url: https://github.com/dlang/phobos/archive/refs/tags/v2.096.0.tar.gz
# # sha256: 72e1641f369431cbd63762619de10d1eca386eaa1e9a4bf3a959080dd05d7f84
# # dest: phobos
# - type: shell
# commands:
# - sed -i 's|$(shell git ls-tree --name-only -r HEAD)|$(shell find . -type f)|' druntime/posix.mak
# buildsystem: simple
# build-commands:
# # Build
# #- cd dmd && make -f posix.mak BUILD=release ENABLE_RELEASE=1 PIC=1 HOST_DMD=ldmd2 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# #- sed -i 's/import dmd.globals;/import dmd.globals;\nimport dmd.glue;/' dmd/src/dmd/todt.d
# - cd dmd/src && gdmd -o build build.d && ./build --help HOST_DMD=gdmd "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# - cd druntime && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# - cd phobos && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# # Install dmd
# - mkdir -p /app/tools/DLang/dmd-tmp/bin
# - install -Dm755 dmd/generated/linux/release/*/dmd /app/tools/DLang/dmd-tmp/bin
# - mkdir -p /app/tools/DLang/dmd-tmp/etc
# - install dmd/generated/linux/release/*/dmd.conf /app/tools/DLang/dmd-tmp/etc
# # Install phobos
# - mkdir -p /app/tools/DLang/dmd-tmp/include/dlang/dmd
# - cp -r druntime/import/. /app/tools/DLang/dmd-tmp/include/dlang/dmd/.
# - cp -r phobos/{*.d,etc,std} /app/tools/DLang/dmd-tmp/include/dlang/dmd
# - mkdir -p /app/tools/DLang/dmd-tmp/lib
# - find phobos/generated/linux/release/*/ -type f -print | grep -v etc | xargs -I '{}' cp '{}' /app/tools/DLang/dmd-tmp/lib
# - find druntime/generated/linux/release/*/ -type f -print | xargs -I '{}' cp '{}' /app/tools/DLang/dmd-tmp/lib
# # Fix search includes
# - mkdir -p /app/tools/DLang/dmd-tmp/libexec
# - mv /app/tools/DLang/dmd-tmp/bin/dmd /app/tools/DLang/dmd-tmp/libexec/dmd
# - echo -e '#! /usr/bin/env sh\nexec "$(dirname "$0")"/../libexec/dmd "-conf=$(dirname "$0")/../etc/dmd.conf" "-L-L$(dirname "$0")/../lib/" "-I$(dirname "$0")/../include/dlang/dmd" "$@"' > /app/tools/DLang/dmd-tmp/bin/dmd
# - chmod +x /app/tools/DLang/dmd-tmp/bin/dmd
# build-options:
# env:
# - GITVER=2.096.0
# cleanup:
# - "*"
#- name: dmd-stage2
# sources: *DMD_SOURCES
# buildsystem: simple
# build-commands:
# # Build
# - cd dmd && make -f posix.mak BUILD=release ENABLE_RELEASE=1 PIC=1 HOST_DMD=dmd "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# - cd druntime && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# - cd phobos && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# # Install dmd
# - mkdir -p /app/tools/DLang/dmd-tmp2/bin
# - install -Dm755 dmd/generated/linux/release/*/dmd /app/tools/DLang/dmd-tmp2/bin
# - mkdir -p /app/tools/DLang/dmd-tmp2/etc
# - install dmd/generated/linux/release/*/dmd.conf /app/tools/DLang/dmd-tmp2/etc
# # Install phobos
# - mkdir -p /app/tools/DLang/dmd-tmp2/include/dlang/dmd
# - cp -r druntime/import/. /app/tools/DLang/dmd-tmp2/include/dlang/dmd/.
# - cp -r phobos/{*.d,etc,std} /app/tools/DLang/dmd-tmp2/include/dlang/dmd
# - mkdir -p /app/tools/DLang/dmd-tmp2/lib
# - find phobos/generated/linux/release/*/ -type f -print | grep -v etc | xargs -I '{}' cp '{}' /app/tools/DLang/dmd-tmp2/lib
# - find druntime/generated/linux/release/*/ -type f -print | xargs -I '{}' cp '{}' /app/tools/DLang/dmd-tmp2/lib
# # Fix search includes
# - mkdir -p /app/tools/DLang/dmd-tmp2/libexec
# - mv /app/tools/DLang/dmd-tmp2/bin/dmd /app/tools/DLang/dmd-tmp2/libexec/dmd
# - echo -e '#! /usr/bin/env sh\nexec "$(dirname "$0")"/../libexec/dmd "-conf=$(dirname "$0")/../etc/dmd.conf" "-L-L$(dirname "$0")/../lib/" "-I$(dirname "$0")/../include/dlang/dmd" "$@"' > /app/tools/DLang/dmd-tmp2/bin/dmd
# - chmod +x /app/tools/DLang/dmd-tmp2/bin/dmd
# build-options:
# append-path: /app/tools/DLang/dmd-tmp/bin
# env:
# - GITVER=2.096.0
# cleanup:
# - "*"
#- name: dmd
# sources: *DMD_SOURCES
# buildsystem: simple
# build-commands:
# # Build
# - cd dmd && make -f posix.mak BUILD=release ENABLE_RELEASE=1 PIC=1 HOST_DMD=dmd "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# - cd druntime && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# - cd phobos && make -f posix.mak DMD=../dmd/generated/linux/release/*/dmd BUILD=release ENABLE_RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS" #ENABLE_LTO=1
# # Install dmd
# - mkdir -p /app/tools/DLang/bin
# - install -Dm755 dmd/generated/linux/release/*/dmd /app/tools/DLang/bin
# - mkdir -p /app/tools/DLang/etc
# - install dmd/generated/linux/release/*/dmd.conf /app/tools/DLang/etc
# # Install phobos
# - mkdir -p /app/tools/DLang/include/dlang/dmd
# - cp -r druntime/import/. /app/tools/DLang/include/dlang/dmd/.
# - cp -r phobos/{*.d,etc,std} /app/tools/DLang/include/dlang/dmd
# - mkdir -p /app/tools/DLang/lib
# - find phobos/generated/linux/release/*/ -type f -print | grep -v etc | xargs -I '{}' cp '{}' /app/tools/DLang/lib
# - find druntime/generated/linux/release/*/ -type f -print | xargs -I '{}' cp '{}' /app/tools/DLang/lib
# # Fix search includes
# - mkdir -p /app/tools/DLang/libexec
# - mv /app/tools/DLang/bin/dmd /app/tools/DLang/libexec/dmd
# - echo -e '#! /usr/bin/env sh\nexec "$(dirname "$0")"/../libexec/dmd "-conf=$(dirname "$0")/../etc/dmd.conf" "-L-L$(dirname "$0")/../lib/" "-I$(dirname "$0")/../include/dlang/dmd" "$@"' > /app/tools/DLang/bin/dmd
# - chmod +x /app/tools/DLang/bin/dmd
# build-options:
# append-path: /app/tools/DLang/dmd-tmp2/bin
# env:
# - GITVER=2.096.0
- name: dub-build-ddox
sources:
- type: archive
url: https://github.com/rejectedsoftware/ddox/archive/v0.16.17.tar.gz
sha256: d07ae079d362ef77aeb752a5a1d17f6a559b106f202c69f9c7f5a22e2f884700
- dub_build_ddox.json
buildsystem: simple
build-commands:
- dub build --skip-registry=all -b release --compiler=dmd
- find .dub/build/ -type f | grep -v '\.o' | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
#- name: dtools
# sources:
# - *DMD
# buildsystem: simple
# build-commands:
# - mkdir -p dmd/generated/linux/release/64/
# - echo -e '#! /usr/bin/env sh\nexec gdmd "$@"' > dmd/generated/linux/release/64/dmd && chmod +x dmd/generated/linux/release/64/dmd
# - cd tools && make -f posix.mak all RELEASE=1 "-j$FLATPAK_BUILDER_N_JOBS"
# - find tools/generated/linux/*/ ! -iname '*.o' -type f -print | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
- name: dub-build-lint
sources:
- type: archive
url: https://github.com/dlang-community/D-Scanner/archive/v0.11.1.tar.gz
sha256: 40c1a0ac91f4e09afe2fe529a7aac3fcf8254803b7728a729a950f55114acdef
- dub_build_lint.json
buildsystem: simple
build-commands:
- dub build --skip-registry=all -b release --compiler=dmd
- find .dub/build/ -type f | grep -v '\.o' | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
- name: dcd-client
sources:
- &DCD_SERVER
type: archive
url: https://github.com/dlang-community/DCD/archive/refs/tags/v0.13.6.tar.gz
sha256: b4237b0489cb095cfd6cf5e22061086326eae057a3ff66244dc99bf61370db8b
- dcd-client_dependencies.json
buildsystem: simple
build-commands:
- dub build --skip-registry=all -b release -c client --compiler=dmd
- find .dub/build/ -type f | grep -v '\.o' | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
- name: dcd-server
sources:
- *DCD_SERVER
- dcd-server_dependencies.json
buildsystem: simple
build-commands:
- dub build --skip-registry=all -b release -c server --compiler=dmd
- find .dub/build/ -type f | grep -v '\.o' | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
- name: serve-d
sources:
- type: archive
url: https://github.com/Pure-D/serve-d/archive/refs/tags/v0.7.0-beta.7.tar.gz
sha256: fa56043e7f3ae546514b3c9fc1e6a6ad59af3f0b27d16a52b6a2bffe6a1850ac
- serve-d.json
buildsystem: simple
build-commands:
- dub build --skip-registry=all -b release --compiler=dmd -c executable
- find .dub/build/ -type f | grep -v '\.o' | xargs -I '{}' install -v -Dm755 '{}' /app/tools/DLang/bin
- name: finalize
buildsystem: simple
build-commands:
- cd /app/tools/DLang && mv bin bin_ && mkdir bin && cp -ra bin_/. bin/. && rm -rf bin_
- find /app/tools/DLang/bin -type f -exec strip \{\} \;
- mv /app/tools/DLang/lib /app/tools/DLang/lib_ && mkdir -p /app/tools/DLang/lib && cp -ra /app/tools/DLang/lib_/. /app/tools/DLang/lib/. && rm -rf /app/tools/DLang/lib_
- find /app/tools/DLang/lib -type f -iname '*.so' -exec strip \{\} \;
- mv /app/tools/DLang/libexec /app/tools/DLang/libexec_ && mkdir -p /app/tools/DLang/libexec && cp -ra /app/tools/DLang/libexec_/. /app/tools/DLang/libexec/. && rm -rf /app/tools/DLang/libexec_
- find /app/tools/DLang/libexec -type f -exec strip \{\} \;