diff --git a/Makefile b/Makefile index c9e58e4..032d08b 100644 --- a/Makefile +++ b/Makefile @@ -2,8 +2,8 @@ include premake.make # git commit hash and version for this build COMMIT-HASH != git log 2>/dev/null | sed -e '1s/^commit //;q' -COMMIT := "const char* commit = \"$(COMMIT-HASH)\";" -VERSION := "const char* version = \"$(MAJOR).$(MINOR).$(PATCH)\";" +COMMIT := "static const char* commit = \"$(COMMIT-HASH)\";" +VERSION := "static const char* version = \"$(MAJOR).$(MINOR).$(PATCH)\";" # some important install locations PREFIX ?= /usr/local @@ -36,10 +36,10 @@ CXX ?= g++ CXXFLAGS += -Wshadow -Wall -Wpedantic -Wextra -Wno-unused-parameter CXXFLAGS += -g3 -fPIC ifeq ($(DEBUG), 1) - CXXFLAGS += -D DEBUG -O0 + CXXFLAGS += -DDEBUG -O0 CONFIG := debug else - CXXFLAGS += -D NDEBUG -O3 + CXXFLAGS += -DNDEBUG -O3 CONFIG := release endif @@ -53,7 +53,7 @@ BIN := $(OUTDIR)/$(PROJ) SRCS += $(notdir $(wildcard src/*.cpp)) OBJS := $(addprefix $(BUILDDIR)/, $(SRCS:.cpp=.o)) DEPS := $(addprefix $(BUILDDIR)/, $(SRCS:.cpp=.dep)) -HDRS ?= $(wildcard src/*.hpp) +HDRS ?= $(filter-out src/precomp.hpp, $(wildcard src/*.hpp)) MANS := $(addprefix $(PREFIX)/, $(wildcard man/man*/*)) # if project supports plugins, link to libdl where needed @@ -126,7 +126,8 @@ else $(OUTDIR)/$(REALNAME): $(OBJS) endif ifeq ($(UNAME_S),Darwin) - $(CXX) -dynamiclib -o $(OUTDIR)/$(REALNAME) -current_version $(MAJOR) -compatibility_version $(MINOR) $(LDFLAGS) $(OBJS) $(LDLIBS) + $(CXX) -dynamiclib -o $(OUTDIR)/$(REALNAME) -install_name $(LIBDIR)/$(REALNAME) \ +-current_version $(MAJOR) -compatibility_version $(MINOR) $(LDFLAGS) $(OBJS) $(LDLIBS) else ifeq ($(UNAME_S),OpenBSD) $(CXX) -g -shared -Wl,-soname,$(REALNAME) -o $(OUTDIR)/$(REALNAME) $(LDFLAGS) $(OBJS) $(LDLIBS) else ifeq ($(UNAME_S),Linux) diff --git a/premake.make b/premake.make index c7a85a8..d84ff43 100644 --- a/premake.make +++ b/premake.make @@ -13,7 +13,7 @@ PRODUCT := tool # Single source of truth for version. MAJOR := 2 MINOR := 0 -PATCH := 1 +PATCH := 2 # Specify desired C++ standard for this project. CXXFLAGS += -std=c++20 diff --git a/src/version.cpp b/src/version.cpp index f0283e3..b87ecb3 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -1,9 +1,9 @@ #include "version.hpp" -#include "version.inc" -#include "commit.inc" #include std::string pw_version() { +#include "version.inc" +#include "commit.inc" std::ostringstream oss; oss << "pw version " << version; #ifdef DEBUG