mirror of
https://github.com/PurpleI2P/i2pd.git
synced 2025-01-10 16:37:54 +00:00
21e3778e69
These commits removed the 'NEEDED*' vars which were added so that CXX* and LDFLAGS could be specified at build time. By doing away with these and using solely CXXFLAGS and LDFLAGS, special flags cannot be added. Indeed, specifying your own CXXFLAGS would cause the build to fail. We want the build flags to be APPENDED, not overwritten.
53 lines
1.2 KiB
Makefile
53 lines
1.2 KiB
Makefile
UNAME := $(shell uname -s)
|
|
SHLIB := libi2pd.so
|
|
I2PD := i2p
|
|
|
|
include filelist.mk
|
|
|
|
USE_AESNI := yes
|
|
USE_STATIC := no
|
|
|
|
ifeq ($(UNAME),Darwin)
|
|
DAEMON_SRC += DaemonLinux.cpp
|
|
include Makefile.osx
|
|
else ifeq ($(UNAME),FreeBSD)
|
|
DAEMON_SRC += DaemonLinux.cpp
|
|
include Makefile.bsd
|
|
else ifeq ($(UNAME),Linux)
|
|
DAEMON_SRC += DaemonLinux.cpp
|
|
include Makefile.linux
|
|
else # win32
|
|
DAEMON_SRC += DaemonWin32.cpp
|
|
endif
|
|
|
|
all: obj $(SHLIB) $(I2PD)
|
|
|
|
obj:
|
|
mkdir -p obj
|
|
|
|
# weaker rule for building files without headers
|
|
obj/%.o : %.cpp
|
|
$(CXX) $(CXXFLAGS) $(NEEDED_CXXFLAGS) $(INCFLAGS) $(CPU_FLAGS) -c -o $@ $<
|
|
|
|
obj/%.o : %.cpp %.h
|
|
$(CXX) $(CXXFLAGS) $(NEEDED_CXXFLAGS) $(INCFLAGS) $(CPU_FLAGS) -c -o $@ $<
|
|
|
|
$(I2PD): $(patsubst %.cpp,obj/%.o,$(DAEMON_SRC))
|
|
$(CXX) -o $@ $^ $(LDLIBS) $(LDFLAGS)
|
|
|
|
$(SHLIB): $(patsubst %.cpp,obj/%.o,$(LIB_SRC))
|
|
$(CXX) $(CXXFLAGS) $(NEEDED_CXXFLAGS) $(INCFLAGS) $(CPU_FLAGS) -shared -o $@ $^
|
|
|
|
clean:
|
|
rm -fr obj $(I2PD) $(SHLIB)
|
|
|
|
LATEST_TAG=$(shell git describe --tags --abbrev=0 master)
|
|
dist:
|
|
git archive --format=tar.gz -9 --worktree-attributes \
|
|
--prefix=i2pd_$(LATEST_TAG)/ $(LATEST_TAG) -o i2pd_$(LATEST_TAG).tar.gz
|
|
|
|
|
|
.PHONY: all
|
|
.PHONY: clean
|
|
.PHONY: dist
|