Skip to content

Commit ecbfe9d

Browse files
committed
Redo "CMAKE_CURRENT_SOURCE_DIR" and clearer build messages
1 parent 5e7d90a commit ecbfe9d

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
@@ -177,15 +177,15 @@ common.o: examples/common.cpp examples/common.h
177177
$(CXX) $(CXXFLAGS) -c $< -o $@
178178

179179
clean:
180-
rm -vf *.o main quantize quantize-stats perplexity embedding benchmark-q4_0-matmult
180+
rm -vf *.o main quantize quantize-stats perplexity embedding benchmark-q4_0-matmult build-info.h
181181

182182
build-info.h: $(GIT_INDEX)
183-
@BUILD_NUMBER=`git rev-list HEAD --count 2>/dev/null`;\
184-
BUILD_COMMIT=`git rev-parse HEAD 2>/dev/null`;\
185-
if [ -z "$$BUILD_NUMBER" ] || [ -z "$$BUILD_COMMIT" ]; then\
186-
BUILD_NUMBER="0";\
187-
BUILD_COMMIT="unknown";\
188-
fi;\
183+
@BUILD_NUMBER="0";\
184+
BUILD_COMMIT="unknown";\
185+
echo "git rev-list HEAD --count"; REV_LIST=`git rev-list HEAD --count`;\
186+
if [ $$? -eq 0 ]; then BUILD_NUMBER=$$REV_LIST; fi;\
187+
echo "git rev-parse HEAD"; REV_PARSE=`git rev-parse HEAD`;\
188+
if [ $$? -eq 0 ]; then BUILD_COMMIT=$$REV_PARSE; fi;\
189189
echo "#ifndef BUILD_INFO_H" > $@;\
190190
echo "#define BUILD_INFO_H" >> $@;\
191191
echo "" >> $@;\
@@ -194,7 +194,6 @@ build-info.h: $(GIT_INDEX)
194194
echo "" >> $@;\
195195
echo "#endif // BUILD_INFO_H" >> $@;
196196

197-
198197
main: examples/main/main.cpp build-info.h ggml.o llama.o common.o $(OBJS)
199198
$(CXX) $(CXXFLAGS) $(filter-out build-info.h,$^) -o $@ $(LDFLAGS)
200199
@echo

0 commit comments

Comments
 (0)