aboutsummaryrefslogtreecommitdiff
path: root/src/makefile.osx
diff options
context:
space:
mode:
authorPieter Wuille <pieter.wuille@gmail.com>2012-04-07 02:06:53 +0200
committerPieter Wuille <pieter.wuille@gmail.com>2012-04-10 18:16:53 +0200
commita20c0d0f6792acf532309eee2e9f29120c801ee4 (patch)
tree0065544e660157fa0701977583b2876c81e833dd /src/makefile.osx
parent138d08c5315c45b3dd08184c4eeb77ee3e47ef0a (diff)
Build identification strings
All client version information is moved to version.cpp, which optionally (-DHAVE_BUILD_INFO) includes build.h. build.h is automatically generated on supporting platforms via contrib/genbuild.sh, using git describe. The git export-subst attribute is used to put the commit id statically in version.cpp inside generated archives, and this value is used if no build.h is present. The gitian descriptors are modified to use git archive instead of a copy, to create the src/ directory in the output. This way, src/src/version.cpp will contain the static commit id. To prevent gitian builds from getting the "-dirty" marker in their git-describe generated identifiers, no touching of files or running sed on the makefile is performed anymore. This does not seem to influence determinism.
Diffstat (limited to 'src/makefile.osx')
-rw-r--r--src/makefile.osx10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/makefile.osx b/src/makefile.osx
index ed35b33ecb..439d8ef21b 100644
--- a/src/makefile.osx
+++ b/src/makefile.osx
@@ -65,6 +65,7 @@ CFLAGS += -Wextra -Wno-sign-compare -Wno-char-subscripts -Wno-invalid-offsetof -
$(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS)
OBJS= \
+ obj/version.o \
obj/checkpoints.o \
obj/netbase.o \
obj/addrman.o \
@@ -99,6 +100,10 @@ all: bitcoind
-include obj/*.P
-include obj-test/*.P
+build.h: FORCE
+ @../share/genbuild.sh build.h
+DEFS += -DHAVE_BUILD_INFO
+
obj/%.o: %.cpp
$(CXX) -c $(CFLAGS) -MMD -o $@ $<
@cp $(@:%.o=%.d) $(@:%.o=%.P); \
@@ -106,7 +111,7 @@ obj/%.o: %.cpp
-e '/^$$/ d' -e 's/$$/ :/' < $(@:%.o=%.d) >> $(@:%.o=%.P); \
rm -f $(@:%.o=%.d)
-bitcoind: $(OBJS:obj/%=obj/%)
+bitcoind: build.h $(OBJS:obj/%=obj/%)
$(CXX) $(CFLAGS) -o $@ $(LIBPATHS) $^ $(LIBS)
TESTOBJS := $(patsubst test/%.cpp,obj-test/%.o,$(wildcard test/*.cpp))
@@ -127,3 +132,6 @@ clean:
-rm -f obj-test/*.o
-rm -f obj/*.P
-rm -f obj-test/*.P
+ -rm -f src/build.h
+
+FORCE: