Makefile: reorder sources after includes
In an upcoming change we'll make some of the sources compile conditionally based on whether or not `WITH_RUST` is defined. To let developers specify that flag in their "config.mak" we'll thus have to reorder our sources so that they come after the include of that file. Do so. Signed-off-by: Patrick Steinhardt <ps@pks.im> Signed-off-by: Junio C Hamano <gitster@pobox.com>main
parent
c184795fc0
commit
f2301be076
176
Makefile
176
Makefile
|
|
@ -919,6 +919,94 @@ LIB_FILE = libgit.a
|
|||
XDIFF_LIB = xdiff/lib.a
|
||||
REFTABLE_LIB = reftable/libreftable.a
|
||||
|
||||
# xdiff and reftable libs may in turn depend on what is in libgit.a
|
||||
GITLIBS = common-main.o $(LIB_FILE) $(XDIFF_LIB) $(REFTABLE_LIB) $(LIB_FILE)
|
||||
EXTLIBS =
|
||||
|
||||
GIT_USER_AGENT = git/$(GIT_VERSION)
|
||||
|
||||
ifeq ($(wildcard sha1collisiondetection/lib/sha1.h),sha1collisiondetection/lib/sha1.h)
|
||||
DC_SHA1_SUBMODULE = auto
|
||||
endif
|
||||
|
||||
# Set CFLAGS, LDFLAGS and other *FLAGS variables. These might be
|
||||
# tweaked by config.* below as well as the command-line, both of
|
||||
# which'll override these defaults.
|
||||
# Older versions of GCC may require adding "-std=gnu99" at the end.
|
||||
CFLAGS = -g -O2 -Wall
|
||||
LDFLAGS =
|
||||
CC_LD_DYNPATH = -Wl,-rpath,
|
||||
BASIC_CFLAGS = -I.
|
||||
BASIC_LDFLAGS =
|
||||
|
||||
# library flags
|
||||
ARFLAGS = rcs
|
||||
PTHREAD_CFLAGS =
|
||||
|
||||
# For the 'sparse' target
|
||||
SPARSE_FLAGS ?= -std=gnu99 -D__STDC_NO_VLA__
|
||||
SP_EXTRA_FLAGS =
|
||||
|
||||
# For informing GIT-BUILD-OPTIONS of the SANITIZE=leak,address targets
|
||||
SANITIZE_LEAK =
|
||||
SANITIZE_ADDRESS =
|
||||
|
||||
# For the 'coccicheck' target
|
||||
SPATCH_INCLUDE_FLAGS = --all-includes
|
||||
SPATCH_FLAGS =
|
||||
SPATCH_TEST_FLAGS =
|
||||
|
||||
# If *.o files are present, have "coccicheck" depend on them, with
|
||||
# COMPUTE_HEADER_DEPENDENCIES this will speed up the common-case of
|
||||
# only needing to re-generate coccicheck results for the users of a
|
||||
# given API if it's changed, and not all files in the project. If
|
||||
# COMPUTE_HEADER_DEPENDENCIES=no this will be unset too.
|
||||
SPATCH_USE_O_DEPENDENCIES = YesPlease
|
||||
|
||||
# Set SPATCH_CONCAT_COCCI to concatenate the contrib/cocci/*.cocci
|
||||
# files into a single contrib/cocci/ALL.cocci before running
|
||||
# "coccicheck".
|
||||
#
|
||||
# Pros:
|
||||
#
|
||||
# - Speeds up a one-shot run of "make coccicheck", as we won't have to
|
||||
# parse *.[ch] files N times for the N *.cocci rules
|
||||
#
|
||||
# Cons:
|
||||
#
|
||||
# - Will make incremental development of *.cocci slower, as
|
||||
# e.g. changing strbuf.cocci will re-run all *.cocci.
|
||||
#
|
||||
# - Makes error and performance analysis harder, as rules will be
|
||||
# applied from a monolithic ALL.cocci, rather than
|
||||
# e.g. strbuf.cocci. To work around this either undefine this, or
|
||||
# generate a specific patch, e.g. this will always use strbuf.cocci,
|
||||
# not ALL.cocci:
|
||||
#
|
||||
# make contrib/coccinelle/strbuf.cocci.patch
|
||||
SPATCH_CONCAT_COCCI = YesPlease
|
||||
|
||||
# Rebuild 'coccicheck' if $(SPATCH), its flags etc. change
|
||||
TRACK_SPATCH_DEFINES =
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH)
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH_INCLUDE_FLAGS)
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH_FLAGS)
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH_TEST_FLAGS)
|
||||
GIT-SPATCH-DEFINES: FORCE
|
||||
@FLAGS='$(TRACK_SPATCH_DEFINES)'; \
|
||||
if test x"$$FLAGS" != x"`cat GIT-SPATCH-DEFINES 2>/dev/null`" ; then \
|
||||
echo >&2 " * new spatch flags"; \
|
||||
echo "$$FLAGS" >GIT-SPATCH-DEFINES; \
|
||||
fi
|
||||
|
||||
include config.mak.uname
|
||||
-include config.mak.autogen
|
||||
-include config.mak
|
||||
|
||||
ifdef DEVELOPER
|
||||
include config.mak.dev
|
||||
endif
|
||||
|
||||
GENERATED_H += command-list.h
|
||||
GENERATED_H += config-list.h
|
||||
GENERATED_H += hook-list.h
|
||||
|
|
@ -1387,94 +1475,6 @@ CLAR_TEST_OBJS += $(UNIT_TEST_DIR)/unit-test.o
|
|||
|
||||
UNIT_TEST_OBJS += $(UNIT_TEST_DIR)/test-lib.o
|
||||
|
||||
# xdiff and reftable libs may in turn depend on what is in libgit.a
|
||||
GITLIBS = common-main.o $(LIB_FILE) $(XDIFF_LIB) $(REFTABLE_LIB) $(LIB_FILE)
|
||||
EXTLIBS =
|
||||
|
||||
GIT_USER_AGENT = git/$(GIT_VERSION)
|
||||
|
||||
ifeq ($(wildcard sha1collisiondetection/lib/sha1.h),sha1collisiondetection/lib/sha1.h)
|
||||
DC_SHA1_SUBMODULE = auto
|
||||
endif
|
||||
|
||||
# Set CFLAGS, LDFLAGS and other *FLAGS variables. These might be
|
||||
# tweaked by config.* below as well as the command-line, both of
|
||||
# which'll override these defaults.
|
||||
# Older versions of GCC may require adding "-std=gnu99" at the end.
|
||||
CFLAGS = -g -O2 -Wall
|
||||
LDFLAGS =
|
||||
CC_LD_DYNPATH = -Wl,-rpath,
|
||||
BASIC_CFLAGS = -I.
|
||||
BASIC_LDFLAGS =
|
||||
|
||||
# library flags
|
||||
ARFLAGS = rcs
|
||||
PTHREAD_CFLAGS =
|
||||
|
||||
# For the 'sparse' target
|
||||
SPARSE_FLAGS ?= -std=gnu99 -D__STDC_NO_VLA__
|
||||
SP_EXTRA_FLAGS =
|
||||
|
||||
# For informing GIT-BUILD-OPTIONS of the SANITIZE=leak,address targets
|
||||
SANITIZE_LEAK =
|
||||
SANITIZE_ADDRESS =
|
||||
|
||||
# For the 'coccicheck' target
|
||||
SPATCH_INCLUDE_FLAGS = --all-includes
|
||||
SPATCH_FLAGS =
|
||||
SPATCH_TEST_FLAGS =
|
||||
|
||||
# If *.o files are present, have "coccicheck" depend on them, with
|
||||
# COMPUTE_HEADER_DEPENDENCIES this will speed up the common-case of
|
||||
# only needing to re-generate coccicheck results for the users of a
|
||||
# given API if it's changed, and not all files in the project. If
|
||||
# COMPUTE_HEADER_DEPENDENCIES=no this will be unset too.
|
||||
SPATCH_USE_O_DEPENDENCIES = YesPlease
|
||||
|
||||
# Set SPATCH_CONCAT_COCCI to concatenate the contrib/cocci/*.cocci
|
||||
# files into a single contrib/cocci/ALL.cocci before running
|
||||
# "coccicheck".
|
||||
#
|
||||
# Pros:
|
||||
#
|
||||
# - Speeds up a one-shot run of "make coccicheck", as we won't have to
|
||||
# parse *.[ch] files N times for the N *.cocci rules
|
||||
#
|
||||
# Cons:
|
||||
#
|
||||
# - Will make incremental development of *.cocci slower, as
|
||||
# e.g. changing strbuf.cocci will re-run all *.cocci.
|
||||
#
|
||||
# - Makes error and performance analysis harder, as rules will be
|
||||
# applied from a monolithic ALL.cocci, rather than
|
||||
# e.g. strbuf.cocci. To work around this either undefine this, or
|
||||
# generate a specific patch, e.g. this will always use strbuf.cocci,
|
||||
# not ALL.cocci:
|
||||
#
|
||||
# make contrib/coccinelle/strbuf.cocci.patch
|
||||
SPATCH_CONCAT_COCCI = YesPlease
|
||||
|
||||
# Rebuild 'coccicheck' if $(SPATCH), its flags etc. change
|
||||
TRACK_SPATCH_DEFINES =
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH)
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH_INCLUDE_FLAGS)
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH_FLAGS)
|
||||
TRACK_SPATCH_DEFINES += $(SPATCH_TEST_FLAGS)
|
||||
GIT-SPATCH-DEFINES: FORCE
|
||||
@FLAGS='$(TRACK_SPATCH_DEFINES)'; \
|
||||
if test x"$$FLAGS" != x"`cat GIT-SPATCH-DEFINES 2>/dev/null`" ; then \
|
||||
echo >&2 " * new spatch flags"; \
|
||||
echo "$$FLAGS" >GIT-SPATCH-DEFINES; \
|
||||
fi
|
||||
|
||||
include config.mak.uname
|
||||
-include config.mak.autogen
|
||||
-include config.mak
|
||||
|
||||
ifdef DEVELOPER
|
||||
include config.mak.dev
|
||||
endif
|
||||
|
||||
GIT-VERSION-FILE: FORCE
|
||||
@OLD=$$(cat $@ 2>/dev/null || :) && \
|
||||
$(call version_gen,"$(shell pwd)",GIT-VERSION-FILE.in,$@) && \
|
||||
|
|
|
|||
Loading…
Reference in New Issue