Skip to content

Commit eac5d68

Browse files
committed
Redo "CMAKE_CURRENT_SOURCE_DIR" and clearer build messages
1 parent db0b835 commit eac5d68

File tree

2 files changed

+15
-16
lines changed

2 files changed

+15
-16
lines changed

CMakeLists.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -84,14 +84,14 @@ find_package(Git)
8484
if(Git_FOUND)
8585
execute_process(
8686
COMMAND \${GIT_EXECUTABLE} rev-parse HEAD
87-
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
87+
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
8888
OUTPUT_VARIABLE TEMP_HEAD
8989
OUTPUT_STRIP_TRAILING_WHITESPACE
9090
RESULT_VARIABLE GIT_HEAD_RESULT
9191
)
9292
execute_process(
9393
COMMAND \${GIT_EXECUTABLE} rev-list --count HEAD
94-
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
94+
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
9595
OUTPUT_VARIABLE TEMP_COUNT
9696
OUTPUT_STRIP_TRAILING_WHITESPACE
9797
RESULT_VARIABLE GIT_COUNT_RESULT
@@ -102,24 +102,24 @@ if(Git_FOUND)
102102
endif()
103103
endif()
104104
105-
file(WRITE \"${CMAKE_SOURCE_DIR}/build-info.h\" \"#pragma once\\n#define BUILD_NUMBER \${COUNT}\\n#define BUILD_COMMIT \\\"\${HEAD}\\\"\\n\")
105+
file(WRITE \"${CMAKE_CURRENT_SOURCE_DIR}/build-info.h\" \"#pragma once\\n#define BUILD_NUMBER \${COUNT}\\n#define BUILD_COMMIT \\\"\${HEAD}\\\"\\n\")
106106
")
107107

108108
# Call the script to generate build-info.h initially
109109
execute_process(
110110
COMMAND ${CMAKE_COMMAND} -DGIT_EXECUTABLE=${GIT_EXECUTABLE} -P ${CMAKE_BINARY_DIR}/BUILD_INFO.cmake
111111
)
112112

113-
if(EXISTS "${CMAKE_SOURCE_DIR}/.git")
113+
if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git")
114114
# Add a custom target to regenerate build-info.h when .git/index changes
115-
add_custom_target(BUILD_INFO ALL DEPENDS "${CMAKE_SOURCE_DIR}/build-info.h")
115+
add_custom_target(BUILD_INFO ALL DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/build-info.h")
116116

117117
# Add a custom command to generate build-info.h when .git/index changes
118118
add_custom_command(
119-
OUTPUT "${CMAKE_SOURCE_DIR}/build-info.h"
120-
COMMENT "Updating build-info.h"
119+
OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/build-info.h"
120+
COMMENT "Generating build details from Git"
121121
COMMAND ${CMAKE_COMMAND} -DGIT_EXECUTABLE=${GIT_EXECUTABLE} -P ${CMAKE_BINARY_DIR}/BUILD_INFO.cmake
122-
DEPENDS "${CMAKE_SOURCE_DIR}/.git/index"
122+
DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/.git/index"
123123
VERBATIM
124124
)
125125
endif()

Makefile

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -184,15 +184,15 @@ common.o: examples/common.cpp examples/common.h
184184
$(CXX) $(CXXFLAGS) -c $< -o $@
185185

186186
clean:
187-
rm -vf *.o main quantize quantize-stats perplexity embedding benchmark-matmult
187+
rm -vf *.o main quantize quantize-stats perplexity embedding benchmark-matmult build-info.h
188188

189189
build-info.h: $(GIT_INDEX)
190-
@BUILD_NUMBER=`git rev-list HEAD --count 2>/dev/null`;\
191-
BUILD_COMMIT=`git rev-parse HEAD 2>/dev/null`;\
192-
if [ -z "$$BUILD_NUMBER" ] || [ -z "$$BUILD_COMMIT" ]; then\
193-
BUILD_NUMBER="0";\
194-
BUILD_COMMIT="unknown";\
195-
fi;\
190+
@BUILD_NUMBER="0";\
191+
BUILD_COMMIT="unknown";\
192+
echo "git rev-list HEAD --count"; REV_LIST=`git rev-list HEAD --count`;\
193+
if [ $$? -eq 0 ]; then BUILD_NUMBER=$$REV_LIST; fi;\
194+
echo "git rev-parse HEAD"; REV_PARSE=`git rev-parse HEAD`;\
195+
if [ $$? -eq 0 ]; then BUILD_COMMIT=$$REV_PARSE; fi;\
196196
echo "#ifndef BUILD_INFO_H" > $@;\
197197
echo "#define BUILD_INFO_H" >> $@;\
198198
echo "" >> $@;\
@@ -201,7 +201,6 @@ build-info.h: $(GIT_INDEX)
201201
echo "" >> $@;\
202202
echo "#endif // BUILD_INFO_H" >> $@;
203203

204-
205204
main: examples/main/main.cpp build-info.h ggml.o llama.o common.o $(OBJS)
206205
$(CXX) $(CXXFLAGS) $(filter-out build-info.h,$^) -o $@ $(LDFLAGS)
207206
@echo

0 commit comments

Comments
 (0)