Rebuild version.o when version.c or LAST_VERSION change
$(TOPDIR)/LAST_VERSION is a cached copy of common.mk's I3_VERSION var, updated only if the two differ.
This commit is contained in:
parent
cd4bc2adf5
commit
5a987cfd6b
1
.gitignore
vendored
1
.gitignore
vendored
@ -33,3 +33,4 @@ docs/*.html
|
|||||||
i3-command-parser.stamp
|
i3-command-parser.stamp
|
||||||
i3-config-parser.stamp
|
i3-config-parser.stamp
|
||||||
.clang_complete
|
.clang_complete
|
||||||
|
LAST_VERSION
|
||||||
|
6
Makefile
6
Makefile
@ -22,6 +22,12 @@ include i3-dump-log/i3-dump-log.mk
|
|||||||
include docs/docs.mk
|
include docs/docs.mk
|
||||||
include man/man.mk
|
include man/man.mk
|
||||||
|
|
||||||
|
# Update $(TOPDIR)/LAST_VERSION if it differs from $I3_VERSION
|
||||||
|
CACHED_VERSION := '$(shell [ -f $(TOPDIR)/LAST_VERSION ] && cat $(TOPDIR)/LAST_VERSION)'
|
||||||
|
ifneq ($(CACHED_VERSION),$(I3_VERSION))
|
||||||
|
$(shell echo -n ${I3_VERSION} > $(TOPDIR)/LAST_VERSION)
|
||||||
|
endif
|
||||||
|
|
||||||
real-all: $(ALL_TARGETS)
|
real-all: $(ALL_TARGETS)
|
||||||
|
|
||||||
install: $(INSTALL_TARGETS)
|
install: $(INSTALL_TARGETS)
|
||||||
|
@ -32,6 +32,10 @@ include/all.h.pch: $(i3_HEADERS)
|
|||||||
echo "[i3] PCH all.h"
|
echo "[i3] PCH all.h"
|
||||||
$(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -x c-header include/all.h -o include/all.h.pch
|
$(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) -x c-header include/all.h -o include/all.h.pch
|
||||||
|
|
||||||
|
src/version.o: src/version.c LAST_VERSION $(i3_HEADERS_DEP)
|
||||||
|
echo "[i3] CC $<"
|
||||||
|
$(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(PCH_FLAGS) -c -o $@ ${canonical_path}/$<
|
||||||
|
|
||||||
src/%.o: src/%.c $(i3_HEADERS_DEP)
|
src/%.o: src/%.c $(i3_HEADERS_DEP)
|
||||||
echo "[i3] CC $<"
|
echo "[i3] CC $<"
|
||||||
$(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(PCH_FLAGS) -c -o $@ ${canonical_path}/$<
|
$(CC) $(I3_CPPFLAGS) $(XCB_CPPFLAGS) $(CPPFLAGS) $(i3_CFLAGS) $(I3_CFLAGS) $(CFLAGS) $(PCH_FLAGS) -c -o $@ ${canonical_path}/$<
|
||||||
@ -92,4 +96,4 @@ install-i3: i3
|
|||||||
|
|
||||||
clean-i3:
|
clean-i3:
|
||||||
echo "[i3] Clean"
|
echo "[i3] Clean"
|
||||||
rm -f $(i3_OBJECTS) $(i3_SOURCES_GENERATED) $(i3_HEADERS_CMDPARSER) include/loglevels.h loglevels.tmp include/all.h.pch i3-command-parser.stamp i3-config-parser.stamp i3 test.config_parser test.commands_parser src/*.gcno src/cfgparse.* src/cmdparse.*
|
rm -f $(i3_OBJECTS) $(i3_SOURCES_GENERATED) $(i3_HEADERS_CMDPARSER) include/loglevels.h loglevels.tmp include/all.h.pch i3-command-parser.stamp i3-config-parser.stamp i3 test.config_parser test.commands_parser src/*.gcno src/cfgparse.* src/cmdparse.* LAST_VERSION
|
||||||
|
Loading…
Reference in New Issue
Block a user