From 7ea34913fe04aebf6e9ce116c689d1f55ab7feaa Mon Sep 17 00:00:00 2001 From: "theredbluecube2@gmail.com" Date: Sat, 6 Dec 2025 18:41:35 +0300 Subject: [PATCH] change build system to CMake --- CMakeLists.txt | 1 + Makefile | 73 -------------------------------------------------- 2 files changed, 1 insertion(+), 73 deletions(-) create mode 100644 CMakeLists.txt delete mode 100644 Makefile diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..cefe61f --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1 @@ +cmake_minimum_required(VERSION 3.11) diff --git a/Makefile b/Makefile deleted file mode 100644 index 1751ef4..0000000 --- a/Makefile +++ /dev/null @@ -1,73 +0,0 @@ -# SPDX-FileCopyrightText: 2025 thorium1256 -# -# SPDX-License-Identifier: GPL-3.0-or-later - -# compiler stuff -CXX := c++ -CXXFLAGS := -I include -std=c++11 -Wall -Wextra -DBG_CXXFLAGS := $(CXXFLAGS) -g -RLS_CXXFLAGS := $(CXXFLAGS) -O2 - -# linker stuff -LDFLAGS := -lncursesw -lSDL2 -DBG_LDFLAGS := $(LDFLAGS) -RLS_LDFLAGS := $(LDFLAGS) -s - -# directories -BUILD_DIR := build -SRC_DIR := src -BIN_DIR := bin -DBG_DIR := $(BIN_DIR)/debug -RLS_DIR := $(BIN_DIR)/release -DBG_EXEC := $(DBG_DIR)/debug -RLS_STRIPPED_EXEC := $(RLS_DIR)/tuimine - -# install stuff -PREFIX ?= /usr/local -BINDIR ?= $(PREFIX)/bin -DATADIR ?= $(PREFIX)/share -APPLICATION ?= tuimine - -# sources and objects -SRCS := $(wildcard $(SRC_DIR)/*.cpp) -DBG_OBJS := $(patsubst $(SRC_DIR)/%.cpp,$(BUILD_DIR)/debug_%.o,$(SRCS)) -RLS_OBJS := $(patsubst $(SRC_DIR)/%.cpp,$(BUILD_DIR)/release_%.o,$(SRCS)) - -$(shell mkdir -p $(BIN_DIR)) -$(shell mkdir -p $(DBG_DIR)) -$(shell mkdir -p $(RLS_DIR)) -$(shell mkdir -p $(BUILD_DIR)) - -# phony rules -.PHONY = all debug release clean install uninstall - -all: release - -debug: $(DBG_EXEC) -release: $(RLS_STRIPPED_EXEC) -both: debug release - -# linking -$(DBG_EXEC): $(DBG_OBJS) - $(CXX) -o $@ $^ $(DBG_LDFLAGS) - -$(RLS_STRIPPED_EXEC): $(RLS_OBJS) - $(CXX) -o $@ $^ $(RLS_LDFLAGS) - -# compiling -$(BUILD_DIR)/debug_%.o: $(SRC_DIR)/%.cpp - $(CXX) -c -o $@ $< $(DBG_CXXFLAGS) - -$(BUILD_DIR)/release_%.o: $(SRC_DIR)/%.cpp - $(CXX) -c -o $@ $< $(RLS_CXXFLAGS) - -install: release - install -d $(DESTDIR)$(BINDIR) - install -m 755 $(RLS_STRIPPED_EXEC) $(DESTDIR)$(BINDIR)/$(APPLICATION) - -uninstall: - rm -f $(DESTDIR)$(BINDIR)/$(APPLICATION) - - -clean: - rm -rf $(BUILD_DIR) $(DBG_DIR) $(RLS_DIR)