summaryrefslogtreecommitdiff
path: root/archived/projt-launcher/buildconfig/Makefile
diff options
context:
space:
mode:
authorMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 18:51:45 +0300
committerMehmet Samet Duman <yongdohyun@projecttick.org>2026-04-02 18:51:45 +0300
commitd3261e64152397db2dca4d691a990c6bc2a6f4dd (patch)
treefac2f7be638651181a72453d714f0f96675c2b8b /archived/projt-launcher/buildconfig/Makefile
parent31b9a8949ed0a288143e23bf739f2eb64fdc63be (diff)
downloadProject-Tick-d3261e64152397db2dca4d691a990c6bc2a6f4dd.tar.gz
Project-Tick-d3261e64152397db2dca4d691a990c6bc2a6f4dd.zip
NOISSUE add archived projects
Signed-off-by: Mehmet Samet Duman <yongdohyun@projecttick.org>
Diffstat (limited to 'archived/projt-launcher/buildconfig/Makefile')
-rw-r--r--archived/projt-launcher/buildconfig/Makefile60
1 files changed, 60 insertions, 0 deletions
diff --git a/archived/projt-launcher/buildconfig/Makefile b/archived/projt-launcher/buildconfig/Makefile
new file mode 100644
index 0000000000..37fe5b74a3
--- /dev/null
+++ b/archived/projt-launcher/buildconfig/Makefile
@@ -0,0 +1,60 @@
+# SPDX-License-Identifier: GPL-2.0
+# BuildConfig module - compiles build configuration from pre-generated source
+#
+# NOTE: BuildConfig.cpp is generated by mk/configure.mk into build/obj/generated/
+# This Makefile only compiles it into libbuildconfig.a
+
+srctree ?= $(shell dirname $(CURDIR))
+KBUILD_OUTPUT ?= $(srctree)/build
+
+# Use the generated BuildConfig.cpp from configure.mk
+GENERATED_DIR := $(KBUILD_OUTPUT)/obj/generated
+OBJDIR := $(KBUILD_OUTPUT)/obj/buildconfig
+LIBDIR := $(KBUILD_OUTPUT)/lib
+
+# Qt paths - use defaults if .config doesn't exist
+-include $(KBUILD_OUTPUT)/.config
+QT_INSTALL_PREFIX ?= $(if $(CONFIG_QT_PREFIX),$(CONFIG_QT_PREFIX),/usr)
+
+# Source files - use the pre-generated BuildConfig.cpp
+GENERATED_SOURCE := $(GENERATED_DIR)/BuildConfig.cpp
+OBJECTS := $(OBJDIR)/BuildConfig.o
+
+# Detect Qt include path
+QT_INCLUDE := $(shell pkg-config --cflags-only-I Qt6Core 2>/dev/null | sed 's/-I//g')
+ifeq ($(QT_INCLUDE),)
+QT_INCLUDE := $(QT_INSTALL_PREFIX)/include/qt6
+endif
+
+# Compiler flags
+CXXFLAGS ?= -O2 -g -fPIC -std=c++17 -Wall -pipe
+INCLUDES := -I$(srctree)/include \
+ -I$(GENERATED_DIR) \
+ -I$(srctree)/buildconfig \
+ $(shell pkg-config --cflags Qt6Core Qt6Gui 2>/dev/null || echo "-I$(QT_INCLUDE) -I$(QT_INCLUDE)/QtCore -I$(QT_INCLUDE)/QtGui")
+
+ifeq ($(V),1)
+Q :=
+else
+Q := @
+endif
+
+all: $(LIBDIR)/libbuildconfig.a
+
+$(LIBDIR)/libbuildconfig.a: $(OBJECTS)
+ @mkdir -p $(@D)
+ $(Q)$(AR) rcs $@ $^
+ @echo " Built "
+
+# Compile the pre-generated BuildConfig.cpp
+$(OBJDIR)/BuildConfig.o: $(GENERATED_SOURCE) | $(OBJDIR)
+ @echo " CXX $<"
+ $(Q)$(CXX) $(CXXFLAGS) $(INCLUDES) -c -o $@ $<
+
+$(OBJDIR):
+ @mkdir -p $@
+
+clean:
+ $(Q)rm -rf $(OBJDIR) $(LIBDIR)/libbuildconfig.a
+
+.PHONY: all clean