@@ -18,7 +18,7 @@ TOOLS= kore-serve
1818
1919GENERATED =
2020PLATFORM =platform.h
21- VERSION =$(OBJDIR ) /version.c
21+ VERSION =$(OBJDIR ) /version
2222PYTHON_CURLOPT =misc/curl/python_curlopt.h
2323
2424S_SRC = src/kore.c src/buf.c src/config.c src/connection.c \
@@ -178,42 +178,54 @@ endif
178178S_OBJS = $(S_SRC:src/%.c=$(OBJDIR ) /%.o )
179179S_OBJS+ =$(OBJDIR ) /version.o
180180
181- all : $(PLATFORM ) $(GENERATED ) $(VERSION ) $(KORE ) $(KODEV )
181+ all :
182+ $(MAKE ) $(OBJDIR )
183+ $(MAKE ) $(PLATFORM )
184+ $(MAKE ) $(KORE )
185+ $(MAKE ) $(KODEV )
182186
183- $(PLATFORM ) : $( OBJDIR ) force
187+ $(PLATFORM ) : force
184188 @if [ -f misc/$( OSNAME) -platform.sh ]; then \
185189 misc/$(OSNAME ) -platform.sh > $(OBJDIR ) /$(PLATFORM ) ; \
186190 fi
187191
188- $(PYTHON_CURLOPT ) : $( OBJDIR ) force
192+ $(PYTHON_CURLOPT ) : force
189193 @cp $(PYTHON_CURLOPT ) $(OBJDIR )
190194
191- $(VERSION ) : $( OBJDIR ) force
195+ $(VERSION ) .c : force
192196 @if [ -d .git ]; then \
193197 GIT_REVISION=` git rev-parse --short=8 HEAD` ; \
194198 GIT_BRANCH=` git rev-parse --abbrev-ref HEAD` ; \
195- rm -f $(VERSION ) ; \
199+ rm -f $(VERSION ) _gen ; \
196200 printf " const char *kore_version = \" %s-%s\" ;\n" \
197- $$ GIT_BRANCH $$ GIT_REVISION > $(VERSION ) ; \
201+ $$ GIT_BRANCH $$ GIT_REVISION > $(VERSION ) _gen ; \
198202 elif [ -f RELEASE ]; then \
199203 printf " const char *kore_version = \" %s\" ;\n" \
200- ` cat RELEASE` > $(VERSION ) ; \
204+ ` cat RELEASE` > $(VERSION ) _gen ; \
201205 else \
202206 echo " No version information found (no .git or RELEASE)" ; \
203207 exit 1; \
204208 fi
205209 @printf " const char *kore_build_date = \" %s\" ;\n" \
206- ` date +" %Y-%m-%d" ` >> $(VERSION ) ;
210+ ` date +" %Y-%m-%d" ` >> $(VERSION ) _gen;
211+ @if [ -f $( VERSION) .c ]; then \
212+ cmp -s $(VERSION ) _gen $(VERSION ) .c; \
213+ if [ $$ ? -ne 0 ]; then \
214+ cp $(VERSION ) _gen $(VERSION ) .c; \
215+ fi \
216+ else \
217+ cp $(VERSION ) _gen $(VERSION ) .c; \
218+ fi
207219
208220$(KODEV ) : src/cli.c
209221 $(MAKE ) -C kodev
210222
211- $(KORE ) : $(OBJDIR ) $(S_OBJS )
223+ $(KORE ) : $(S_OBJS ) $(GENERATED )
212224 $(CC ) $(S_OBJS ) $(LDFLAGS ) -o $(KORE )
213225 @echo $(LDFLAGS ) > kore.linker
214226 @echo $(FEATURES ) $(FEATURES_INC ) > kore.features
215227
216- objects : $(OBJDIR ) $( PLATFORM ) $(GENERATED ) $(S_OBJS )
228+ objects : $(PLATFORM ) $(GENERATED ) $(S_OBJS )
217229 @echo $(LDFLAGS ) > $(OBJDIR ) /ldflags
218230 @echo " $( FEATURES) $( FEATURES_INC) " > $(OBJDIR ) /features
219231
@@ -241,7 +253,6 @@ install-sources:
241253 @if [ -d .git ]; then \
242254 GIT_REVISION=` git rev-parse --short=8 HEAD` ; \
243255 GIT_BRANCH=` git rev-parse --abbrev-ref HEAD` ; \
244- rm -f $(VERSION ) ; \
245256 echo " $$ GIT_BRANCH-$$ GIT_REVISION" > \
246257 $(DESTDIR )$(SHARE_DIR ) /RELEASE; \
247258 elif [ -f RELEASE ]; then \
@@ -284,14 +295,14 @@ tools-install:
284295$(OBJDIR ) /% .o : src/% .c
285296 $(CC ) $(CFLAGS ) -c $< -o $@
286297
287- src/kore.c : $(VERSION )
298+ src/kore.c : $(VERSION ) .c
288299
289300src/python.c : $(PYTHON_CURLOPT )
290301
291302src/seccomp.c : $(PLATFORM )
292303
293304clean :
294- rm -f $(VERSION )
305+ rm -f $(VERSION ) .c $( VERSION ) _gen
295306 find . -type f -name \* .o -exec rm {} \;
296307 rm -rf $(KORE ) $(OBJDIR ) kore.features kore.linker
297308 $(MAKE ) -C kodev clean
0 commit comments