mirror of
https://github.com/Zygo/bees.git
synced 2025-05-17 21:35:45 +02:00
This paves the way for building different .so libs. Signed-off-by: Kai Krakow <kai@kaishome.de>
42 lines
806 B
Makefile
42 lines
806 B
Makefile
TAG := $(shell git describe --always --dirty || echo UNKNOWN)
|
|
|
|
default: libcrucible.so
|
|
%.so: Makefile
|
|
|
|
CRUCIBLE_OBJS = \
|
|
chatter.o \
|
|
cleanup.o \
|
|
crc64.o \
|
|
error.o \
|
|
extentwalker.o \
|
|
fd.o \
|
|
fs.o \
|
|
ntoa.o \
|
|
path.o \
|
|
process.o \
|
|
string.o \
|
|
task.o \
|
|
time.o \
|
|
uuid.o \
|
|
.version.o \
|
|
|
|
libcrucible.so: $(CRUCIBLE_OBJS)
|
|
|
|
include ../makeflags
|
|
|
|
depends.mk: *.cc
|
|
for x in *.cc; do $(CXX) $(CXXFLAGS) -M "$$x"; done > depends.mk.new
|
|
mv -fv depends.mk.new depends.mk
|
|
|
|
.version.cc: Makefile ../makeflags *.cc ../include/crucible/*.h
|
|
echo "namespace crucible { const char *VERSION = \"$(TAG)\"; }" > .version.new.cc
|
|
mv -f .version.new.cc .version.cc
|
|
|
|
include depends.mk
|
|
|
|
%.o: %.cc ../makeflags
|
|
$(CXX) $(CXXFLAGS) -fPIC -o $@ -c $<
|
|
|
|
%.so:
|
|
$(CXX) $(LDFLAGS) -fPIC -o $@ $^ -shared -Wl,-soname,$@ -luuid
|