From c59e1f54cbf2d3885b97e00e53fb718875369e60 Mon Sep 17 00:00:00 2001 From: Stelios Tsampas Date: Wed, 28 Feb 2024 12:32:30 +0200 Subject: [PATCH] Add a skeleton makefile * `reaper` is moved to subprojects due to meson forcing a certain project structure, so prepare in case we move to meson in the future * `ulwgl-run` renamed to `ulwgl-run.in` since they are not usable straight from the repo. --- .gitignore | 2 + .gitmodules | 2 +- Makefile | 74 +++++++++++++++++++++++++++++++ ULWGL/ULWGL-Launcher/ulwgl-run.in | 3 ++ ULWGL/ulwgl-run.in | 3 ++ reaper => subprojects/reaper | 0 6 files changed, 83 insertions(+), 1 deletion(-) create mode 100644 Makefile create mode 100755 ULWGL/ULWGL-Launcher/ulwgl-run.in create mode 100755 ULWGL/ulwgl-run.in rename reaper => subprojects/reaper (100%) diff --git a/.gitignore b/.gitignore index e757ab0ad..7eacf1168 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ var +build +dist __pycache__ .ref diff --git a/.gitmodules b/.gitmodules index 8b5ef1d3f..c3e5d8843 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "reaper"] - path = reaper + path = subprojects/reaper url = https://github.com/Plagman/reaper.git diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..89692cb1b --- /dev/null +++ b/Makefile @@ -0,0 +1,74 @@ +PROJECT := ulwgl + +BUILDDIR ?= build +DESTDIR ?= + +PREFIX ?= /usr +BINDIR := $(PREFIX)/bin +LIBDIR := $(PREFIX)/lib +DATADIR := $(PREFIX)/share + +.PHONY: all +all: reaper ulwgl ulwgl-launcher + +ulwgl-run: + $(info :: Building $@) + sed 's|##INSTALL_PATH##|$(DATADIR)/$(PROJECT)|g' ULWGL/ulwgl-run.in > $(BUILDDIR)/$@ + +ulwgl-bin-install: ulwgl-run + install -d $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 755 $(BUILDDIR)/$< $(DESTDIR)$(BINDIR)/ulwgl-run + +ulwgl-dist-install: + install -d $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ulwgl_consts.py -t $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ulwgl_dl_util.py -t $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ulwgl_log.py -t $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ulwgl_plugins.py -t $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ulwgl_run.py -t $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ulwgl_util.py -t $(DESTDIR)$(DATADIR)/$(PROJECT) + install -Dm 644 ULWGL/ULWGL_VERSION.json -t $(DESTDIR)$(DATADIR)/$(PROJECT) + +# Install both dist and sh script target +ulwgl-install: ulwgl-dist-install ulwgl-bin-install +# Install dist only target +#ulwgl-install: ulwgl-dist-install + + +ulwgl-launcher-run: + $(info :: Building $@) + sed 's|##INSTALL_PATH##|$(DATADIR)/$(PROJECT)|g' ULWGL/ULWGL-Launcher/ulwgl-run.in > $(BUILDDIR)/$@ + +ulwgl-launcher-bin-install: ulwgl-launcher-run + install -d $(DESTDIR)$(DATADIR)/$(PROJECT)/ULWGL-Launcher + install -Dm 755 $(BUILDDIR)/$< $(DESTDIR)$(DATADIR)/$(PROJECT)/ULWGL-Launcher/ulwgl-run + +ulwgl-launcher-dist-install: + install -d $(DESTDIR)$(DATADIR)/$(PROJECT)/ULWGL-Launcher + install -Dm 644 ULWGL/ULWGL-Launcher/compatibilitytool.vdf -t $(DESTDIR)$(DATADIR)/$(PROJECT)/ULWGL-Launcher + install -Dm 644 ULWGL/ULWGL-Launcher/toolmanifest.vdf -t $(DESTDIR)$(DATADIR)/$(PROJECT)/ULWGL-Launcher + +# Install both dist and sh script target +ulwgl-launcher-install: ulwgl-launcher-dist-install ulwgl-launcher-bin-install +# Install dist only target +#ulwgl-launcher-install: ulwgl-launcher-dist-install + + +reaper: + $(info :: Building $@) + meson setup $(BUILDDIR)/$@ subprojects/$@ + ninja -C $(BUILDDIR)/$@ -v + +reaper-install: reaper + install -Dm 755 $(BUILDDIR)/$