Procházet zdrojové kódy

Add Docker 25.04 builds and fix apt-publisher to support both 24.04 and 25.04.

Started making builds more dynamic
master
Ray Burgemeestre před 1 měsícem
rodič
revize
451f918fff
24 změnil soubory, kde provedl 520 přidání a 250 odebrání
  1. +79
    -0
      Dockerfile-ubuntu2504
  2. +42
    -23
      Makefile
  3. +29
    -25
      allegro5/Makefile
  4. +21
    -2
      apt-publisher/Makefile
  5. +13
    -8
      benchmarklib/Makefile
  6. +18
    -13
      boost/Makefile
  7. +11
    -6
      caf/Makefile
  8. +16
    -4
      crtmpserver/Makefile
  9. +17
    -13
      fastpfor/Makefile
  10. +19
    -14
      ffmpeg/Makefile
  11. +18
    -13
      fmt/Makefile
  12. +23
    -16
      imagemagick/Makefile
  13. +17
    -12
      inotify-cpp/Makefile
  14. +8
    -4
      msxsaver/Makefile
  15. +19
    -13
      openexr/Makefile
  16. +21
    -8
      opentelemetry-cpp/Makefile
  17. +23
    -5
      png++/Makefile
  18. +31
    -6
      redis-plus-plus/Makefile
  19. +19
    -14
      seasocks/Makefile
  20. +19
    -14
      sfml/Makefile
  21. +8
    -4
      starcry/Makefile
  22. +17
    -12
      tvision/Makefile
  23. +14
    -8
      v8pp/Makefile
  24. +18
    -13
      vivid/Makefile

+ 79
- 0
Dockerfile-ubuntu2504 Zobrazit soubor

@@ -0,0 +1,79 @@
FROM ubuntu:25.04 AS build1

LABEL maintainer="Ray Burgemeestre <ray@cppse.nl>"

ARG DEBIAN_FRONTEND=noninteractive

# This is a workaround for https://stackoverflow.com/questions/71941032/why-i-cannot-run-apt-update-inside-a-fresh-ubuntu22-04
RUN sed -i -e 's/^APT/# APT/' -e 's/^DPkg/# DPkg/' \
/etc/apt/apt.conf.d/docker-clean

RUN apt-get update && \
apt-get -y install g++12 git sudo wget gnupg2 && \
apt-get -y install libssl-dev build-essential && \
apt-get -y install vim gdb strace patch && \
\
apt update -y && \
apt-get install -y clang-19 clang-tidy-19 libclang-19-dev clangd-19 lldb-19 lld-19 clangd-19 && \
apt-get install -y libc++-19-dev libc++-19-dev clang-format-19 clang-tidy-19 && \
\
rm -rf /var/lib/apt/lists/*

# Install newer CMake to avoid some warnings the "FindBoost" script throws on
# more recent versions of boost that the system CMake doesn't now about.
# I chose a bloody new boost, so I need to use the latest RC1 (at the time of writing)
# EDIT: actually we can get rid of this block, Ubuntu 22.04 has a recent enough version already
#RUN wget https://github.com/Kitware/CMake/releases/download/v3.31.7/cmake-3.31.7.tar.gz && \
# tar -zxf cmake-3.31.7.tar.gz && \
# cd cmake-3.31.7 && \
# ./bootstrap && \
# make -j $(nproc) && \
# make install && \
# cd .. && \
# rm -rf cmake-3.31.7 && \
# rm -rf cmake-3.31.7.tar.gz

RUN sudo apt-get update && \
sudo apt-get install -y cmake

# Install emscripten deps (EDIT: was using default branch, and 'latest' instead of 3.1.6, but I think something broke recently w/r/t keyboard handling)
RUN sudo apt-get install -y libsdl2-dev && \
(git clone https://github.com/emscripten-core/emsdk.git || true) && \
cd emsdk && \
git checkout 3.1.6 && \
./emsdk install 3.1.6 && \
./emsdk activate 3.1.6 && \
sudo cp -prv ./emsdk_env.sh /etc/profile.d/ && \
chown root:root /emsdk -R

# Warmup emscripten (this will pre-fetch SDL2, and cache it)
RUN /emsdk/upstream/emscripten/em++ -s WASM=1 -s USE_SDL=2 -s USE_SDL_TTF=2 -O3 /dev/null || true

# Fix some weird linker issue CAF build runs into. (fails to link -lc++abi)
#RUN cp -prv /usr/lib/llvm-15/lib/libc++abi.so.1.0 /usr/lib/llvm-15/lib/libc++abi.so
# ^ No longer needed with clang-19

# EDIT: no longer needed!
# RUN cp -prv /usr/lib/llvm-14/lib/libunwind.so.1.0 /usr/lib/llvm-14/lib/libunwind.so

# Install mold (even faster than gold) (linker)
RUN apt install -y mold

COPY switch-to-latest-clang /usr/local/bin/switch-to-latest-clang
COPY switch-to-latest-gcc /usr/local/bin/switch-to-latest-gcc

RUN chmod +x /usr/local/bin/switch-to-latest-clang
RUN chmod +x /usr/local/bin/switch-to-latest-gcc

RUN apt clean

# DEBUG
# RUN ls -alh /emsdk/upstream/emscripten/cache/ports/harfbuzz/harfbuzz-3.2.0
# RUN chown -R root:root /emsdk
# RUN ls -alh /emsdk/upstream/emscripten/cache/ports/harfbuzz/harfbuzz-3.2.0

FROM scratch

COPY --from=build1 / /

CMD "/bin/bash"

+ 42
- 23
Makefile Zobrazit soubor

@@ -1,5 +1,10 @@
SHELL:=/bin/bash

#UBUNTU_VERSION ?= 2404
#CODENAME ?= noble
UBUNTU_VERSION ?= 2504
CODENAME ?= plucky

.PHONY: help
help: # with thanks to Ben Rady
@grep -E '^[0-9a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}'
@@ -12,37 +17,43 @@ build: ## build all packages
# make -C $$dir build; \
# fi \
# done
make -C allegro5 build
make -C boost build
echo make -C allegro5 build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C allegro5 build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C boost build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)

# no longer used
# make -C benchmarklib build
make -C caf build
# TODO: retest after building boost..
# make -C benchmarklib build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C caf build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C opentelemetry-cpp build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
# skipping
# make -C crtmpserver build
# make -C opentelemetry-cpp build
make -C fastpfor build
make -C ffmpeg build
make -C fmt build
make -C openexr build
make -C imagemagick build
make -C inotify-cpp build
make -C png++ build
make -C redis-plus-plus build
make -C seasocks build
make -C sfml build
make -C tvision build
make -C v8pp build
make -C vivid build
make -C starcry build
make -C msxsaver build
make -C fastpfor build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C ffmpeg build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C fmt build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C openexr build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C imagemagick build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C inotify-cpp build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C png++ build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C redis-plus-plus build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C seasocks build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C sfml build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C tvision build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C v8pp build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C vivid build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C starcry build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make -C msxsaver build UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)

prepare: ## prepare and publish build container
sudo chown trigen:trigen . -R
make ubuntu2404
make ubuntu2404publish
make ubuntu2504
make ubuntu2504publish

publish: ## publish build deb packages
. env.sh; make -C apt-publisher build
. .env; make -C apt-publisher build

ci_all: # run all CI
make prepare
@@ -85,14 +96,22 @@ ubuntu2404nocache:
ubuntu2404publish:
docker push rayburgemeestre/build-ubuntu:24.04

ubuntu2504:
docker build . -f Dockerfile-ubuntu2504 -t rayburgemeestre/build-ubuntu:25.04

ubuntu2504nocache:
docker build . -f Dockerfile-ubuntu2504 -t rayburgemeestre/build-ubuntu:25.04 --no-cache

ubuntu2504publish:
docker push rayburgemeestre/build-ubuntu:25.04

shell:
docker run -it -v $$PWD:$$PWD --workdir $$PWD rayburgemeestre/build-ubuntu:18.04 /bin/bash

clean:
chown trigen:trigen . -R
for dir in */; do \
if [ -f "$$dir/Makefile" ]; then \
make -C $$dir clean; \
fi \
done



+ 29
- 25
allegro5/Makefile Zobrazit soubor

@@ -1,13 +1,17 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=5.2.5.0

build: cppse-allegro5_$(VERSION)_amd64.deb cppse-allegro5sdl_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-allegro5_$(VERSION)_amd64.deb $(CODENAME)/cppse-allegro5sdl_$(VERSION)_amd64.deb

cppse-allegro5_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-allegro5_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

cppse-allegro5sdl_$(VERSION)_amd64.deb:
$(CODENAME)/cppse-allegro5sdl_$(VERSION)_amd64.deb:
echo handled by above target anyway

ubuntu1804:
@@ -36,14 +40,14 @@ ubuntu2204:
make package_sdl-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone https://github.com/liballeg/allegro5.git || true
pushd allegro5 && git checkout $(VERSION)
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh make impl_sdl
make package_sdl-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh make impl_sdl
make package_sdl-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

prep:
apt-get update
@@ -93,7 +97,7 @@ package-ubuntu1804:
# somewhere also platform became needed, let's pull those in as well
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5/include/allegro5/platform/
rm -rf allegro5_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out

package_sdl-ubuntu1804:
rm -rf out
@@ -103,7 +107,7 @@ package_sdl-ubuntu1804:
cp -prv allegro5/include/allegro5/internal/* out/opt/cppse/build/allegro5sdl/include/allegro5/internal/
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5sdl/include/allegro5/platform/
rm -rf allegro5sdl_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out

package-ubuntu2004:
rm -rf out
@@ -116,7 +120,7 @@ package-ubuntu2004:
# somewhere also platform became needed, let's pull those in as well
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5/include/allegro5/platform/
rm -rf allegro5_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
@@ -129,9 +133,9 @@ package-ubuntu2204:
# somewhere also platform became needed, let's pull those in as well
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5/include/allegro5/platform/
rm -rf allegro5_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/allegro5/
cp -prv allegro5/allegro5_static/* out/opt/cppse/build/allegro5/
@@ -141,8 +145,9 @@ package-ubuntu2404:
cp -prv allegro5/include/allegro5/internal/* out/opt/cppse/build/allegro5/include/allegro5/internal/
# somewhere also platform became needed, let's pull those in as well
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5/include/allegro5/platform/
rm -rf cppse-allegro5_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-allegro5_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-allegro5 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
cp -prv cppse-allegro5_*_amd64.deb $(CODENAME)/

package_sdl-ubuntu2004:
rm -rf out
@@ -152,7 +157,7 @@ package_sdl-ubuntu2004:
cp -prv allegro5/include/allegro5/internal/* out/opt/cppse/build/allegro5sdl/include/allegro5/internal/
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5sdl/include/allegro5/platform/
rm -rf allegro5sdl_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1.1 -s dir -t deb -n allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1.1 -s dir -t deb -n allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out

package_sdl-ubuntu2204:
rm -rf out
@@ -162,24 +167,23 @@ package_sdl-ubuntu2204:
cp -prv allegro5/include/allegro5/internal/* out/opt/cppse/build/allegro5sdl/include/allegro5/internal/
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5sdl/include/allegro5/platform/
rm -rf allegro5sdl_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out

package_sdl-ubuntu2404:
package_sdl-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/allegro5sdl/
cp -prv allegro5/allegro5_static/* out/opt/cppse/build/allegro5sdl/
cp -prv allegro5/include/allegro5/internal/aintern_bitmap.h out/opt/cppse/build/allegro5sdl/include/allegro5/internal/aintern_bitmap.h
cp -prv allegro5/include/allegro5/internal/* out/opt/cppse/build/allegro5sdl/include/allegro5/internal/
cp -prv allegro5/include/allegro5/platform/* out/opt/cppse/build/allegro5sdl/include/allegro5/platform/
rm -rf cppse-allegro5sdl_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v $(VERSION) -s dir -t deb -n cppse-allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-allegro5sdl_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-allegro5sdl --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "allegro5 - SDL version - build dependency" --url "https://github.com/liballeg/allegro5.git" --deb-generate-changes -C /src/out
cp -prv cppse-allegro5sdl_*_amd64.deb $(CODENAME)/

clean:
rm -rf allegro5
rm -rf out
rm -rf allegro5*.deb
rm -rf allegro5*.changes
rm -rf cppse-allegro5*.deb
# rm -rf cppse-allegro5*.deb

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash

+ 21
- 2
apt-publisher/Makefile Zobrazit soubor

@@ -6,6 +6,12 @@ build:
sleep 2
. ../.env; make apt-ubuntu2404-pt2

status:
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "reprepro -b /repo list noble"
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "reprepro -b /repo list plucky"
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "reprepro -b /repo list noble" | wc -l
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "reprepro -b /repo list plucky" | wc -l

apt-ubuntu1804:
wget -c $$SECRET_URL 1>/dev/null 2>/dev/null
tar -zxvf *secret.tar.gz
@@ -34,7 +40,8 @@ apt-ubuntu2204-pt2:
apt-ubuntu2404:
wget -c $$SECRET_URL 1>/dev/null 2>/dev/null
tar -zxvf *secret.tar.gz || true
make prepare-packages-ubuntu2404
make prepare-packages-ubuntu-dyn CODENAME=noble
make prepare-packages-ubuntu-dyn CODENAME=plucky
make update-packages-ubuntu2404

apt-ubuntu2404-pt2:
@@ -123,6 +130,13 @@ prepare-packages-ubuntu2404:
../msxsaver/msxsaver_*.deb \
packages/

prepare-packages-ubuntu-dyn:
mkdir -p packages/$(CODENAME)
echo removing old packages..
rm -rfv packages/$(CODENAME)/*
echo copying new packages..
cp -prv ../*/$(CODENAME)/*.deb packages/$(CODENAME)/ || true

docker-ubuntu1804:
docker build . -t rayburgemeestre/apt-ubuntu:18.04 -f Dockerfile-ubuntu1804

@@ -186,8 +200,10 @@ update-packages-ubuntu2204-rsync:

update-packages-ubuntu2404:
docker pull rayburgemeestre/apt-ubuntu:22.04
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "find packages -type f -name '*.deb' | xargs -n 1 reprepro -b /repo includedeb noble "
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "find packages/noble -type f -name '*.deb' | xargs -n 1 reprepro -b /repo --ignore=wrongdistribution --ignore=surprisingbinary includedeb noble "
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "find packages/plucky -type f -name '*.deb' | xargs -n 1 reprepro -b /repo --ignore=wrongdistribution --ignore=surprisingbinary includedeb plucky "
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "reprepro -b /repo list noble"
docker run -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/sh -c "reprepro -b /repo list plucky"
# echo produce artifact for debugging
tar -czf repo.tar.gz repo
# rsync to host
@@ -217,5 +233,8 @@ shell-ubuntu2404:
docker pull rayburgemeestre/apt-ubuntu:22.04
docker run -i -t -v $$PWD:$$PWD -v $$PWD/gnupg:/root/.gnupg -v $$PWD/repo:/repo --workdir $$PWD rayburgemeestre/apt-ubuntu:24.04 /bin/bash

clean:
rm -rf *_secret.tar.gz

clean-all:
rm -rf repo gnupg keys

+ 13
- 8
benchmarklib/Makefile Zobrazit soubor

@@ -1,23 +1,27 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.0

build: cppse-benchmarklib_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-benchmarklib_$(VERSION)_amd64.deb

cppse-benchmarklib_$(VERSION)_amd64.deb:
make benchmarklib_
$(CODENAME)/cppse-benchmarklib_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make benchmarklib_ CODENAME=$(CODENAME)

benchmarklib_:
git clone https://bitbucket.org/rayburgemeestre/benchmarklib || true
pushd benchmarklib && git checkout master
bash ../ubuntu2404.sh make impl
bash ../ubuntu$(UBUNTU_VERSION).sh make impl CODENAME=$(CODENAME)
make package

impl:
switch-to-latest-clang
# TODO install boost from apt repo
# if [[ -f CMakeCache.txt ]]; then rm CMakeCache.txt; fi
dpkg -i ../boost/cppse-boost_*_amd64.deb
dpkg -i ../boost/$(CODENAME)/cppse-boost_*_amd64.deb
pushd benchmarklib && \
CXX=$$(which c++) cmake -DSTATIC=1 -DBOOST_ROOT=/opt/cppse/build/boost -DCMAKE_INSTALL_PREFIX=$$PWD/benchmarklib_out -DNO_AUTO_USE_LIBCPP_CLANG=1 . && \
make -j $$(nproc) && \
@@ -27,12 +31,13 @@ package:
rm -rf out
mkdir -p out/opt/cppse/build/benchmarklib
cp -prv ./benchmarklib/benchmarklib_out/* out/opt/cppse/build/benchmarklib/
rm -rf benchmarklib_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v $(VERSION) -s dir -t deb -n cppse-benchmarklib --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "benchmarklib - build dependency" --url "https://bitbucket.org/rayburgemeestre/benchmarklib" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-benchmarklib_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-benchmarklib --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "benchmarklib - build dependency" --url "https://bitbucket.org/rayburgemeestre/benchmarklib" --deb-generate-changes -C /src/out
cp -prv cppse-benchmarklib_*_amd64.deb $(CODENAME)/

clean:
rm -rf benchmarklib
rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 18
- 13
boost/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.86.0

build: cppse-boost_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-boost_$(VERSION)_amd64.deb

cppse-boost_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-boost_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu1804:
# below URL is unreliable
@@ -27,11 +31,11 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone --branch boost-1.86.0 --recursive https://github.com/boostorg/boost
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R

impl:
switch-to-latest-clang
@@ -86,7 +90,7 @@ package-ubuntu1804:
cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
cp -L -prv boost/boost out/opt/cppse/build/boost/include/
rm -rf boost_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out

package-ubuntu2004:
rm -rf out
@@ -94,7 +98,7 @@ package-ubuntu2004:
cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
cp -L -prv boost/boost out/opt/cppse/build/boost/include/
rm -rf boost_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
@@ -102,15 +106,16 @@ package-ubuntu2204:
cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
cp -L -prv boost/boost out/opt/cppse/build/boost/include/
rm -rf boost_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/boost/include/
cp -L -prv boost/stage/lib out/opt/cppse/build/boost/
cp -L -prv boost/boost out/opt/cppse/build/boost/include/
rm -rf boost_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-boost_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-boost --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "boost - build dependency" --url "https://github.com/liballeg/boost.git" --deb-generate-changes -C /src/out
cp -prv cppse-boost_*_amd64.deb $(CODENAME)/

clean:
rm -rf boost

+ 11
- 6
caf/Makefile Zobrazit soubor

@@ -1,16 +1,20 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.0.2

build: cppse-caf_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-caf_$(VERSION)_amd64.deb

cppse-caf_$(VERSION)_amd64.deb:
$(CODENAME)/cppse-caf_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make caf

caf:
git clone https://github.com/actor-framework/actor-framework || true
pushd actor-framework && git checkout 1.0.2
bash ../ubuntu2404.sh make impl
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package

impl:
@@ -43,12 +47,13 @@ package:
cp -prv actor-framework/build/caf_out/* out/opt/cppse/build/caf/
# workaround for https://groups.google.com/forum/#!topic/actor-framework/xOmdVFRD7lc
# cp -prv actor-framework/build/caf/detail/build_config.hpp out/opt/cppse/build/caf/include/caf/detail/
rm -rf caf_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-caf --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "caf - build dependency" --url "https://github.com/liballeg/caf.git" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-caf_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-caf --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "caf - build dependency" --url "https://github.com/liballeg/caf.git" --deb-generate-changes -C /src/out
cp -prv cppse-caf_*_amd64.deb $(CODENAME)/

clean:
rm -rf actor-framework
rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu2404.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 16
- 4
crtmpserver/Makefile Zobrazit soubor

@@ -1,8 +1,19 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.1.1

build: $(CODENAME)/cppse-crtmpserver_$(VERSION)_amd64.deb

$(CODENAME)/cppse-crtmpserver_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make crtmpserver

crtmpserver:
git clone --branch lib https://github.com/rayburgemeestre/crtmpserver
bash ../ubuntu1804.sh make impl
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package

impl:
@@ -29,12 +40,13 @@ package:
./crtmpserver/builders/cmake/tinyxml/libtinyxml.a \
./crtmpserver/builders/cmake/lua/liblua.a \
out/opt/cppse/build/crtmpserver/lib/ # last is DEST
rm -rf crtmpserver_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v 1.1.1 -s dir -t deb -n crtmpserver --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "crtmpserver - build dependency" --url "https://github.com/rayburgemeestre/crtmpserver" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-crtmpserver_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-crtmpserver --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "crtmpserver - build dependency" --url "https://github.com/rayburgemeestre/crtmpserver" --deb-generate-changes -C /src/out
cp -prv cppse-crtmpserver_*_amd64.deb $(CODENAME)/

clean:
rm -rf crtmpserver
rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 17
- 13
fastpfor/Makefile Zobrazit soubor

@@ -1,12 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=0.1.7

build: cppse-fastpfor_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-fastpfor_$(VERSION)_amd64.deb

cppse-fastpfor_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-fastpfor_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu1804:
#git clone https://github.com/lemire/FastPFor
@@ -29,12 +32,12 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone https://github.com/rayburgemeestre/FastPFor || true
pushd FastPFor && git checkout change-google-test-branch # master at the time of writing
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
patch FastPFor/CMakeLists.txt libcpp.patch
@@ -50,7 +53,7 @@ package-ubuntu1804:
cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
rm -rf fastpfor_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out

package-ubuntu2004:
rm -rf out
@@ -59,7 +62,7 @@ package-ubuntu2004:
cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
rm -rf fastpfor_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
@@ -68,16 +71,17 @@ package-ubuntu2204:
cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
rm -rf fastpfor_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/fastpfor/lib
mkdir -p out/opt/cppse/build/fastpfor/include
cp -prv ./FastPFor/libFastPFOR.a out/opt/cppse/build/fastpfor/lib/
cp -prv ./FastPFor/headers out/opt/cppse/build/fastpfor/include/
rm -rf fastpfor_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-fastpfor_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-fastpfor --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fastpfor - build dependency" --url "https://github.com/rayburgemeestre/FastPFor" --deb-generate-changes -C /src/out
cp -prv cppse-fastpfor_*_amd64.deb $(CODENAME)/

clean:
rm -rf FastPFor

+ 19
- 14
ffmpeg/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=7.1

build: cppse-ffmpeg_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-ffmpeg_$(VERSION)_amd64.deb

cppse-ffmpeg_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-ffmpeg_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu1804:
# sometimes got 404 on videolan/x264
@@ -41,13 +45,13 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone -b stable https://code.videolan.org/videolan/x264 || true
git clone -b n$(VERSION) https://github.com/FFmpeg/FFmpeg ffmpeg || true

bash ../ubuntu2404.sh make ffmpeg_impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make ffmpeg_impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

ffmpeg_impl:
# see issue https://exerror.com/fatal-detected-dubious-ownership-in-repository/
@@ -87,7 +91,7 @@ package-ubuntu1804:
cp -prv ./x264_out/* out/opt/cppse/build/x264/
cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/
rm -rf cppseffmpeg_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out

package-ubuntu2004:
rm -rf out
@@ -96,7 +100,7 @@ package-ubuntu2004:
cp -prv ./x264_out/* out/opt/cppse/build/x264/
cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/
rm -rf cppseffmpeg_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
@@ -105,16 +109,17 @@ package-ubuntu2204:
cp -prv ./x264_out/* out/opt/cppse/build/x264/
cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/
rm -rf cppseffmpeg_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n cppseffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/x264
mkdir -p out/opt/cppse/build/ffmpeg
cp -prv ./x264_out/* out/opt/cppse/build/x264/
cp -prv ./ffmpeg_out/* out/opt/cppse/build/ffmpeg/
rm -rf cppseffmpeg_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-ffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-ffmpeg_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-ffmpeg --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "ffmpeg - build dependency" --url "https://gitea.cppse.nl/rayburgemeestre/build-config/src/branch/master/ffmpeg" --deb-generate-changes -C /src/out
cp -prv cppse-ffmpeg_*_amd64.deb $(CODENAME)/

clean:
rm -rf x264
@@ -124,4 +129,4 @@ clean:
rm -rf ffmpeg_out

shell:
FLAGS="-i --privileged" bash ../ubuntu2404.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 18
- 13
fmt/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=7.1.3

build: cppse-fmt_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-fmt_$(VERSION)_amd64.deb

cppse-fmt_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-fmt_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2004:
git clone https://github.com/rayburgemeestre/fmt --branch 7.1.3
@@ -21,12 +25,12 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone https://github.com/rayburgemeestre/fmt --branch 7.1.3
bash ../ubuntu2404.sh make impl
bash ../ubuntu2404.sh make impl-emscripten
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
bash ../ubuntu$(UBUNTU_VERSION).sh make impl-emscripten
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
switch-to-latest-clang
@@ -52,7 +56,7 @@ package-ubuntu2004:
cp -prv fmt/build/fmt_out/* out/opt/cppse/build/fmt/
cp -prv fmt/build2/fmt_out/lib/libfmt.a out/opt/cppse/build/fmt/lib/libfmt-em.a
rm -rf fmt_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n fmt --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fmt - build dependency" --url "https://github.com/mattgodbolt/fmt" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n fmt --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fmt - build dependency" --url "https://github.com/mattgodbolt/fmt" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
@@ -60,15 +64,16 @@ package-ubuntu2204:
cp -prv fmt/build/fmt_out/* out/opt/cppse/build/fmt/
cp -prv fmt/build2/fmt_out/lib/libfmt.a out/opt/cppse/build/fmt/lib/libfmt-em.a
rm -rf fmt_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n fmt --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fmt - build dependency" --url "https://github.com/mattgodbolt/fmt" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n fmt --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fmt - build dependency" --url "https://github.com/mattgodbolt/fmt" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/fmt
cp -prv fmt/build/fmt_out/* out/opt/cppse/build/fmt/
cp -prv fmt/build2/fmt_out/lib/libfmt.a out/opt/cppse/build/fmt/lib/libfmt-em.a
rm -rf fmt_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-fmt --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fmt - build dependency" --url "https://github.com/mattgodbolt/fmt" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-fmt_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-fmt --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "fmt - build dependency" --url "https://github.com/mattgodbolt/fmt" --deb-generate-changes -C /src/out
cp -prv cppse-fmt_*_amd64.deb $(CODENAME)/

clean:
rm -rf fmt

+ 23
- 16
imagemagick/Makefile Zobrazit soubor

@@ -1,11 +1,16 @@
SHELL:=/bin/bash

VERSION:=7.0.10-53
UBUNTU_VERSION ?= 2404
CODENAME ?= noble

build: cppse-imagemagick_$(VERSION)_amd64.deb
# VERSION:=7.0.10-53
VERSION:=7.1.1-47

cppse-imagemagick_$(VERSION)_amd64.deb:
make ubuntu2404
build: $(CODENAME)/cppse-imagemagick_$(VERSION)_amd64.deb

$(CODENAME)/cppse-imagemagick_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2004:
git clone --branch 7.0.10-53 https://github.com/ImageMagick/ImageMagick || true
@@ -19,17 +24,18 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
git clone --branch 7.0.10-53 https://github.com/ImageMagick/ImageMagick || true
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
ubuntu$(UBUNTU_VERSION):
git clone --branch $(VERSION) https://github.com/ImageMagick/ImageMagick || true
bash ../ubuntu$(UBUNTU_VERSION).sh make impl UBUNTU_VERSION=$(UBUNTU_VERSION) CODENAME=$(CODENAME)
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
switch-to-latest-clang
apt-get update && apt-get install libz-dev autoconf -y && \
apt-get install -y libpng-dev libxcb-render0-dev libxcb-shm0-dev libxcb1-dev libtiff-dev libtiff5-dev libtiffxx6 && \
dpkg -i ../openexr/cppse-openexr_*.deb && \
echo dpkg -i ../openexr/$(CODENAME)/cppse-openexr_*.deb && \
dpkg -i ../openexr/$(CODENAME)/cppse-openexr_*.deb && \
pushd ImageMagick && \
autoconf && \
PKG_CONFIG_PATH=/opt/cppse/build//openexr/lib/pkgconfig ./configure CC=$$(which cc) CXX=$$(which c++) --with-pkgconfigdir=/opt/cppse/build/openexr/lib/pkgconfig CFLAGS="-I/opt/cppse/build/openexr/include/OpenEXR" LDFLAGS="-L/opt/cppse/build/openexr/lib/" --with-openexr=yes --enable-hdri --with-tiff=yes --with-jpeg=yes --with-openexr=yes --with-png=yes --with-tiff=yes --enable-shared=no --enable-static=yes --prefix=$$PWD/imagemagick_out && \
@@ -41,25 +47,26 @@ package-ubuntu2004:
mkdir -p out/opt/cppse/build/imagemagick
cp -prv ImageMagick/imagemagick_out/* out/opt/cppse/build/imagemagick/
rm -rf cppseimagemagick_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n cppseimagemagick --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "imagemagick - build dependency" --url "https://github.com/ImageMagick/ImageMagick" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n cppseimagemagick --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "imagemagick - build dependency" --url "https://github.com/ImageMagick/ImageMagick" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
mkdir -p out/opt/cppse/build/imagemagick
cp -prv ImageMagick/imagemagick_out/* out/opt/cppse/build/imagemagick/
rm -rf cppseimagemagick_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n cppseimagemagick --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "imagemagick - build dependency" --url "https://github.com/ImageMagick/ImageMagick" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n cppseimagemagick --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "imagemagick - build dependency" --url "https://github.com/ImageMagick/ImageMagick" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/imagemagick
cp -prv ImageMagick/imagemagick_out/* out/opt/cppse/build/imagemagick/
rm -rf cppseimagemagick_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-imagemagick --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "imagemagick - build dependency" --url "https://github.com/ImageMagick/ImageMagick" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-imagemagick_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-imagemagick --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "imagemagick - build dependency" --url "https://github.com/ImageMagick/ImageMagick" --deb-generate-changes -C /src/out
cp -prv cppse-imagemagick_*_amd64.deb $(CODENAME)/

clean:
rm -rf ImageMagick
rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu2404.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 17
- 12
inotify-cpp/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.0.0

build: cppse-inotify-cpp_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-inotify-cpp_$(VERSION)_amd64.deb

cppse-inotify-cpp_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-inotify-cpp_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2004:
# check out revision that is master at the time of writing
@@ -25,14 +29,14 @@ ubuntu2204:
bash ../ubuntu2204.sh make impl
make package-ubuntu2204

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
# check out revision that is master at the time of writing
git clone https://github.com/erikzenker/inotify-cpp || true
pushd inotify-cpp && \
git checkout 1a4413637a08f6303526a2be140806f5abaaffd5 && \
popd && \
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)

impl:
dpkg -i ../boost/cppse-boost_*.deb
@@ -46,25 +50,26 @@ package-ubuntu2004:
mkdir -p out/opt/cppse/build/inotify-cpp
cp -prv inotify-cpp_out/* out/opt/cppse/build/inotify-cpp/
rm -rf cppse_inotify-cpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n inotify-cpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "inotify-cpp - build dependency" --url "https://github.com/erikzenker/inotify-cpp" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n inotify-cpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "inotify-cpp - build dependency" --url "https://github.com/erikzenker/inotify-cpp" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
mkdir -p out/opt/cppse/build/inotify-cpp
cp -prv inotify-cpp_out/* out/opt/cppse/build/inotify-cpp/
rm -rf cppse_inotify-cpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n inotify-cpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "inotify-cpp - build dependency" --url "https://github.com/erikzenker/inotify-cpp" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n inotify-cpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "inotify-cpp - build dependency" --url "https://github.com/erikzenker/inotify-cpp" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/inotify-cpp
cp -prv inotify-cpp_out/* out/opt/cppse/build/inotify-cpp/
rm -rf cppse_inotify-cpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-inotify-cpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "inotify-cpp - build dependency" --url "https://github.com/erikzenker/inotify-cpp" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-inotify-cpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-inotify-cpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "inotify-cpp - build dependency" --url "https://github.com/erikzenker/inotify-cpp" --deb-generate-changes -C /src/out
cp -prv cppse-inotify-cpp_*_amd64.deb $(CODENAME)/

clean:
sudo rm -rf inotify-cpp*
sudo rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 8
- 4
msxsaver/Makefile Zobrazit soubor

@@ -1,13 +1,17 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.0

build: msxsaver_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-msxsaver_$(VERSION)_amd64.deb

msxsaver_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-msxsaver_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone --recursive https://github.com/rayburgemeestre/msxsaver || true
pushd msxsaver && \
git pull --rebase && \

+ 19
- 13
openexr/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=3.3.2

build: cppse-openexr_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-openexr_$(VERSION)_amd64.deb

cppse-openexr_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-openexr_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2004:
git clone --branch v2.5.2 https://github.com/AcademySoftwareFoundation/openexr || true
@@ -19,11 +23,11 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone --branch v3.3.2 https://github.com/AcademySoftwareFoundation/openexr || true
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
switch-to-latest-clang
@@ -45,7 +49,7 @@ package-ubuntu2004:
cp -prv openexr/build/openexr_out/* out/opt/cppse/build/openexr/
cp -prv openexr/build2/openexr_out/lib/* out/opt/cppse/build/openexr/lib/
rm -rf cppseopenexr_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n cppseopenexr --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "openexr - build dependency" --url "https://github.com/AcademySoftwareFoundation/openexr" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n cppseopenexr --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "openexr - build dependency" --url "https://github.com/AcademySoftwareFoundation/openexr" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
@@ -53,19 +57,21 @@ package-ubuntu2204:
cp -prv openexr/build/openexr_out/* out/opt/cppse/build/openexr/
cp -prv openexr/build2/openexr_out/lib/* out/opt/cppse/build/openexr/lib/
rm -rf cppseopenexr_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n cppseopenexr --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "openexr - build dependency" --url "https://github.com/AcademySoftwareFoundation/openexr" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n cppseopenexr --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "openexr - build dependency" --url "https://github.com/AcademySoftwareFoundation/openexr" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/openexr
cp -prv openexr/build/openexr_out/* out/opt/cppse/build/openexr/
cp -prv openexr/build2/openexr_out/lib/* out/opt/cppse/build/openexr/lib/
rm -rf cppseopenexr_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-openexr --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "openexr - build dependency" --url "https://github.com/AcademySoftwareFoundation/openexr" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-openexr_*_amd64.deb
# TODO: make sure all other debs are in noble.
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-openexr --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "openexr - build dependency" --url "https://github.com/AcademySoftwareFoundation/openexr" --deb-generate-changes -C /src/out
cp -prv cppse-openexr_*_amd64.deb $(CODENAME)/

clean:
rm -rf openexr
rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu2204.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 21
- 8
opentelemetry-cpp/Makefile Zobrazit soubor

@@ -1,5 +1,16 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.20.0

build: $(CODENAME)/cppse-opentelemetry_$(VERSION)_amd64.deb

$(CODENAME)/cppse-opentelemetry_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2204:
git clone --recurse-submodules https://github.com/open-telemetry/opentelemetry-cpp || true

@@ -8,13 +19,14 @@ ubuntu2204:

make package-ubuntu2204

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone --recurse-submodules https://github.com/open-telemetry/opentelemetry-cpp || true
git checkout v$(VERSION) || true

mkdir -p out
bash ../ubuntu2404.sh make opentelem
bash ../ubuntu$(UBUNTU_VERSION).sh make opentelem

make package-ubuntu2404
make package-ubuntu$(UBUNTU_VERSION)

.PHONY : opentelem
opentelem:
@@ -45,14 +57,15 @@ package-ubuntu2204:
mkdir -p pkg_out/opt/cppse/build/
rsync -raPv out/ pkg_out/opt/cppse/build/
rm -rf redis-plus-plus*amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1 -s dir -t deb -n redis-plus-plus --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "redis-plus-plus - build dependency" --url "https://github.com/sewenew/redis-plus-plus" --deb-generate-changes -C /src/pkg_out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1 -s dir -t deb -n redis-plus-plus --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "redis-plus-plus - build dependency" --url "https://github.com/sewenew/redis-plus-plus" --deb-generate-changes -C /src/pkg_out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf pkg_out
mkdir -p pkg_out/opt/cppse/build/
rsync -raPv out/ pkg_out/opt/cppse/build/
rm -rf redis-plus-plus*amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v 1.1 -s dir -t deb -n redis-plus-plus --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "redis-plus-plus - build dependency" --url "https://github.com/sewenew/redis-plus-plus" --deb-generate-changes -C /src/pkg_out
rm -rf $(CODENAME)/cppse-opentelemetry_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-opentelemetry --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "opentelemetry - build dependency" --url "https://github.com/open-telemetry/opentelemetry-cpp" --deb-generate-changes -C /src/pkg_out
cp -prv cppse-opentelemetry_*_amd64.deb $(CODENAME)/

clean:
sudo rm -rf opentelemetry-cpp
@@ -60,4 +73,4 @@ clean:
sudo rm -rf pkg_out

shell:
FLAGS="-i --privileged" bash ../ubuntu2204.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 23
- 5
png++/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=0.2.10

build: cppse-pngpp_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-pngpp_$(VERSION)_amd64.deb

cppse-pngpp_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-pngpp_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu1804:
wget http://download.savannah.nongnu.org/releases/pngpp/png++-0.2.10.tar.gz
@@ -27,6 +31,11 @@ ubuntu2404:
tar -zxvf png++-0.2.10.tar.gz
make package-ubuntu2404

ubuntu$(UBUNTU_VERSION):
wget -c http://download.savannah.nongnu.org/releases/pngpp/png++-0.2.10.tar.gz
tar -zxvf png++-0.2.10.tar.gz
make package-ubuntu$(UBUNTU_VERSION)

package-ubuntu1804:
rm -rf out
mkdir -p out/opt/cppse/build/png++
@@ -45,8 +54,17 @@ package-ubuntu2404:
rm -rf out
mkdir -p out/opt/cppse/build/png++
cp -prv png++-0.2.10/* out/opt/cppse/build/png++/
rm -rf pngpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-pngpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "png++ - build dependency" --url "https://www.nongnu.org/pngpp/" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-pngpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-pngpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "png++ - build dependency" --url "https://www.nongnu.org/pngpp/" --deb-generate-changes -C /src/out
mv -v cppse-pngpp_*_amd64.deb $(CODENAME)/

package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/png++
cp -prv png++-0.2.10/* out/opt/cppse/build/png++/
rm -rf $(CODENAME)/cppse-pngpp_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-pngpp --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "png++ - build dependency" --url "https://www.nongnu.org/pngpp/" --deb-generate-changes -C /src/out
mv -v cppse-pngpp_*_amd64.deb $(CODENAME)/

clean:
rm -rf png++*

+ 31
- 6
redis-plus-plus/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.3.6

build: cppse-redis-plus-plus_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-redis-plus-plus_$(VERSION)_amd64.deb

cppse-redis-plus-plus_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-redis-plus-plus_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2204:
mkdir -p $$PWD/../out
@@ -31,6 +35,18 @@ ubuntu2404:

make package-ubuntu2404

ubuntu$(UBUNTU_VERSION):
mkdir -p $$PWD/../out

# check out revision that is master at the time of writing
git clone -b v1.2.0 https://github.com/redis/hiredis || true
bash ../ubuntu$(UBUNTU_VERSION).sh make hiredis

git clone -b 1.3.13 https://github.com/sewenew/redis-plus-plus || true
bash ../ubuntu$(UBUNTU_VERSION).sh make redis-plus-plus

make package-ubuntu$(UBUNTU_VERSION)

.PHONY : hiredis
hiredis:
pushd hiredis && \
@@ -60,8 +76,17 @@ package-ubuntu2404:
rm -rf pkg_out
mkdir -p pkg_out/opt/cppse/build/
rsync -raPv out/ pkg_out/opt/cppse/build/
rm -rf redis-plus-plus*amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-redis-plus-plus --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "redis-plus-plus - build dependency" --url "https://github.com/sewenew/redis-plus-plus" --deb-generate-changes -C /src/pkg_out
rm -rf $(CODENAME)/cppse-redis-plus-plus_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-redis-plus-plus --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "redis-plus-plus - build dependency" --url "https://github.com/sewenew/redis-plus-plus" --deb-generate-changes -C /src/pkg_out
mv -v cppse-redis-plus-plus_*_amd64.deb $(CODENAME)/

package-ubuntu$(UBUNTU_VERSION):
rm -rf pkg_out
mkdir -p pkg_out/opt/cppse/build/
rsync -raPv out/ pkg_out/opt/cppse/build/
rm -rf $(CODENAME)/cppse-redis-plus-plus_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-redis-plus-plus --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "redis-plus-plus - build dependency" --url "https://github.com/sewenew/redis-plus-plus" --deb-generate-changes -C /src/pkg_out
mv -v cppse-redis-plus-plus_*_amd64.deb $(CODENAME)/

clean:
sudo rm -rf hiredis
@@ -70,4 +95,4 @@ clean:
sudo rm -rf pkg_out

shell:
FLAGS="-i --privileged" bash ../ubuntu2404.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 19
- 14
seasocks/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=1.4.4

build: cppse-seasocks_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-seasocks_$(VERSION)_amd64.deb

cppse-seasocks_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-seasocks_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu1804:
git clone https://github.com/rayburgemeestre/seasocks --branch v1.4.3
@@ -25,12 +29,12 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
# git clone https://github.com/rayburgemeestre/seasocks --branch v1.4.4
git clone https://github.com/rayburgemeestre/seasocks --branch master || true
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
switch-to-latest-clang
@@ -48,28 +52,29 @@ package-ubuntu1804:
mkdir -p out/opt/cppse/build/seasocks
cp -prv seasocks/build/seasocks_out/* out/opt/cppse/build/seasocks/
rm -rf seasocks_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out

package-ubuntu2004:
rm -rf out
mkdir -p out/opt/cppse/build/seasocks
cp -prv seasocks/build/seasocks_out/* out/opt/cppse/build/seasocks/
rm -rf seasocks_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
mkdir -p out/opt/cppse/build/seasocks
cp -prv seasocks/build/seasocks_out/* out/opt/cppse/build/seasocks/
rm -rf seasocks_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/seasocks
cp -prv seasocks/build/seasocks_out/* out/opt/cppse/build/seasocks/
rm -rf seasocks_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-seasocks_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-seasocks --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "seasocks - build dependency" --url "https://github.com/mattgodbolt/seasocks" --deb-generate-changes -C /src/out
cp -prv cppse-seasocks_*_amd64.deb $(CODENAME)/

clean:
rm -rf seasocks
@@ -77,4 +82,4 @@ clean:
rm -rf build

shell:
FLAGS="-i --privileged" bash ../ubuntu2204.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 19
- 14
sfml/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=2.5.0

build: cppse-sfml_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-sfml_$(VERSION)_amd64.deb

cppse-sfml_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-sfml_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu1804:
git clone https://github.com/SFML/SFML.git
@@ -27,12 +31,12 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone https://github.com/SFML/SFML.git
pushd SFML && git checkout 2.5.x # && patch -p1 < ../patch.txt
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
# copy & paste from allegro5
@@ -56,32 +60,33 @@ package-ubuntu1804:
mkdir -p out/opt/cppse/build/sfml/
cp -prv SFML/sfml_static/* out/opt/cppse/build/sfml/
rm -rf sfml_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -v 1.1 -s dir -t deb -n sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:18.04 fpm -f -v 1.1 -s dir -t deb -n sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out

package-ubuntu2004:
rm -rf out
mkdir -p out/opt/cppse/build/sfml/
cp -prv SFML/sfml_static/* out/opt/cppse/build/sfml/
rm -rf sfml_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
mkdir -p out/opt/cppse/build/sfml/
cp -prv SFML/sfml_static/* out/opt/cppse/build/sfml/
rm -rf sfml_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/sfml/
cp -prv SFML/sfml_static/* out/opt/cppse/build/sfml/
rm -rf sfml_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-sfml_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-sfml --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "SFML - build dependency" --url "https://github.com/SFML/SFML.git" --deb-generate-changes -C /src/out
cp -prv cppse-sfml_*_amd64.deb $(CODENAME)/

clean:
rm -rf SFML
rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 8
- 4
starcry/Makefile Zobrazit soubor

@@ -1,13 +1,17 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=0.1.0

build: cppse-starcry_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-starcry_$(VERSION)_amd64.deb

cppse-starcry_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-starcry_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
git clone --recursive https://github.com/rayburgemeestre/starcry || true
pushd starcry && \
git fetch --all && \

+ 17
- 12
tvision/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=2.0

build: cppse-tvision_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-tvision_$(VERSION)_amd64.deb

cppse-tvision_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-tvision_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2004:
# check out revision that is master at the time of writing
@@ -25,14 +29,14 @@ ubuntu2204:
bash ../ubuntu2204.sh make impl
make package-ubuntu2204

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
# check out revision that is master at the time of writing
git clone https://github.com/magiblot/tvision || true
pushd tvision && \
git checkout 8605384659274edf1db39abef5338d2573c3e0b6 && \
popd && \
bash ../ubuntu2404.sh make impl
make package-ubuntu2404
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
make package-ubuntu$(UBUNTU_VERSION)

impl:
pushd tvision && \
@@ -47,25 +51,26 @@ package-ubuntu2004:
mkdir -p out/opt/cppse/build/tvision
cp -prv tvision_out/* out/opt/cppse/build/tvision/
rm -rf cppse_tvision_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -v 1.1 -s dir -t deb -n cppse-tvision --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "tvision - build dependency" --url "https://github.com/magiblot/tvision" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:20.04 fpm -f -v 1.1 -s dir -t deb -n cppse-tvision --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "tvision - build dependency" --url "https://github.com/magiblot/tvision" --deb-generate-changes -C /src/out

package-ubuntu2204:
rm -rf out
mkdir -p out/opt/cppse/build/tvision
cp -prv tvision_out/* out/opt/cppse/build/tvision/
rm -rf cppse_tvision_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n cppse-tvision --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "tvision - build dependency" --url "https://github.com/magiblot/tvision" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n cppse-tvision --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "tvision - build dependency" --url "https://github.com/magiblot/tvision" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/tvision
cp -prv tvision_out/* out/opt/cppse/build/tvision/
rm -rf cppse_tvision_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-tvision --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "tvision - build dependency" --url "https://github.com/magiblot/tvision" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-tvision_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-tvision --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "tvision - build dependency" --url "https://github.com/magiblot/tvision" --deb-generate-changes -C /src/out
cp -prv cppse-tvision_*_amd64.deb $(CODENAME)/

clean:
sudo rm -rf tvision*
sudo rm -rf out

shell:
FLAGS="-i --privileged" bash ../ubuntu1804.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 14
- 8
v8pp/Makefile Zobrazit soubor

@@ -1,13 +1,17 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=10.0.139.9
#VERSION:=11.9.169.4
#VERSION:=13.0.245.25

build: cppse-v8_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-v8_$(VERSION)_amd64.deb

cppse-v8_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-v8_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

#ubuntu1804:
# # git clone https://github.com/rayburgemeestre/v8pp
@@ -46,16 +50,16 @@ cppse-v8_$(VERSION)_amd64.deb:
# make fpm_package
# bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
ubuntu$(UBUNTU_VERSION):
rm -rfv depot_tools
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git || true
#git clone -b v1.8.1 https://github.com/pmed/v8pp || true , next version 1.8.2, will probably contain the fix for clang-14 as well. for now..
#git clone -b master https://github.com/pmed/v8pp || true # ..we'll use master.
git clone -b v2.1.1 https://github.com/pmed/v8pp || true # ..we'll use master.
make impl1 # v8 only, doesn't deal with docker rootless very well
# no v8pp anymore: bash ../ubuntu2404.sh make impl2 # prepares packaging as well
# no v8pp anymore: bash ../ubuntu$(UBUNTU_VERSION).sh make impl2 # prepares packaging as well
make fpm_package
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl1:
# see issue https://exerror.com/fatal-detected-dubious-ownership-in-repository/
@@ -104,7 +108,9 @@ prepare-package-v8pp:
echo no-op

fpm_package:
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-v8 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "v8 - build dependency" --url "https://github.com/rayburgemeestre/v8pp" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-v8_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-v8 --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "v8 - build dependency" --url "https://github.com/rayburgemeestre/v8pp" --deb-generate-changes -C /src/out
cp -prv cppse-v8_*_amd64.deb $(CODENAME)/

clean:
rm -rf v8pp
@@ -116,4 +122,4 @@ clean:
rm -rf ninja

shell:
FLAGS="-i --privileged" bash ../ubuntu2404.sh /bin/bash
FLAGS="-i --privileged" bash ../ubuntu$(UBUNTU_VERSION).sh /bin/bash

+ 18
- 13
vivid/Makefile Zobrazit soubor

@@ -1,11 +1,15 @@
SHELL:=/bin/bash

UBUNTU_VERSION ?= 2404
CODENAME ?= noble

VERSION:=3.0.1

build: cppse-vivid_$(VERSION)_amd64.deb
build: $(CODENAME)/cppse-vivid_$(VERSION)_amd64.deb

cppse-vivid_$(VERSION)_amd64.deb:
make ubuntu2404
$(CODENAME)/cppse-vivid_$(VERSION)_amd64.deb:
mkdir -p $(CODENAME)
make ubuntu$(UBUNTU_VERSION)

ubuntu2204:
git clone -b v3.0.1 https://github.com/gurki/vivid
@@ -14,12 +18,12 @@ ubuntu2204:
make package-ubuntu2204
bash ../ubuntu2204.sh chown $$(id -u):$$(id -g) . -R # fix permissions

ubuntu2404:
git clone -b v3.0.1 https://github.com/gurki/vivid
bash ../ubuntu2404.sh make impl
bash ../ubuntu2404.sh make impl-emscripten
make package-ubuntu2404
bash ../ubuntu2404.sh chown $$(id -u):$$(id -g) . -R # fix permissions
ubuntu$(UBUNTU_VERSION):
git clone -b v3.0.1 https://github.com/gurki/vivid || true
bash ../ubuntu$(UBUNTU_VERSION).sh make impl
bash ../ubuntu$(UBUNTU_VERSION).sh make impl-emscripten
make package-ubuntu$(UBUNTU_VERSION)
bash ../ubuntu$(UBUNTU_VERSION).sh chown $$(id -u):$$(id -g) . -R # fix permissions

impl:
git config --global --add safe.directory '*'
@@ -59,17 +63,18 @@ package-ubuntu2204:
cp -prv vivid/vivid_out2/lib/libvivid.a out/opt/cppse/build/vivid/lib/libvivid-em.a
cp -prv vivid/build/_deps/glm-src/glm out/opt/cppse/build/vivid/include/
rm -rf vivid_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -v 1.1.1 -s dir -t deb -n vivid --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "vivid - build dependency" --url "https://github.com/gurki/vivid.git" --deb-generate-changes -C /src/out
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:22.04 fpm -f -v 1.1.1 -s dir -t deb -n vivid --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "vivid - build dependency" --url "https://github.com/gurki/vivid.git" --deb-generate-changes -C /src/out

package-ubuntu2404:
package-ubuntu$(UBUNTU_VERSION):
rm -rf out
mkdir -p out/opt/cppse/build/vivid/
cp -prv vivid/vivid_out/* out/opt/cppse/build/vivid/
# emscripten version
cp -prv vivid/vivid_out2/lib/libvivid.a out/opt/cppse/build/vivid/lib/libvivid-em.a
cp -prv vivid/build/_deps/glm-src/glm out/opt/cppse/build/vivid/include/
rm -rf vivid_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -v $(VERSION) -s dir -t deb -n cppse-vivid --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "vivid - build dependency" --url "https://github.com/gurki/vivid.git" --deb-generate-changes -C /src/out
rm -rf $(CODENAME)/cppse-vivid_*_amd64.deb
docker run -v "$$(pwd):/src/" rayburgemeestre/fpm-ubuntu:24.04 fpm -f -v $(VERSION) --iteration $(CODENAME) -s dir -t deb -n cppse-vivid --license MPL2 --maintainer "Ray Burgemeestre <ray@cppse.nl>" --description "vivid - build dependency" --url "https://github.com/gurki/vivid.git" --deb-generate-changes -C /src/out
mv -v cppse-vivid_*_amd64.deb $(CODENAME)/

clean:
rm -rf vivid

Načítá se…
Zrušit
Uložit