mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-23 15:29:51 +00:00
Modified the SUFFIXES pseudo targets so that we remove all default suffixes
and explicitly declare all the ones we're using for LLVM. This quickly cancels many of GNU Make's implicit rules and reduces build time. The only caveat is that any new suffixes may need to be explictly added to the .SUFFIXES pseudo target. Removed the -only-static option as it is no longer used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7979 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e584285a22
commit
9621a2b073
@ -169,6 +169,17 @@ prdirs::
|
|||||||
echo "LLVM Source Root: " $(LLVM_SRC_ROOT)
|
echo "LLVM Source Root: " $(LLVM_SRC_ROOT)
|
||||||
echo "LLVM Object Root: " $(LLVM_OBJ_ROOT)
|
echo "LLVM Object Root: " $(LLVM_OBJ_ROOT)
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# Suffixes and implicit rules:
|
||||||
|
# Empty out the list of suffixes, generate a list that is only
|
||||||
|
# used by this Makefile, and cancel useless implicit rules. This
|
||||||
|
# will hopefully speed up compilation a little bit.
|
||||||
|
###########################################################################
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .c .cpp .h .hpp .y .l
|
||||||
|
.SUFFIXES: .lo .o .a .so .bc
|
||||||
|
.SUFFIXES: .ps .dot .d
|
||||||
|
|
||||||
#
|
#
|
||||||
# Mark all of these targets as phony. This will hopefully speed up builds
|
# Mark all of these targets as phony. This will hopefully speed up builds
|
||||||
# slightly since GNU Make will not try to find implicit rules for targets
|
# slightly since GNU Make will not try to find implicit rules for targets
|
||||||
@ -212,11 +223,6 @@ ifdef ENABLE_PROFILING
|
|||||||
PROFILE = -pg
|
PROFILE = -pg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
#
|
|
||||||
# Suffixes for library compilation rules
|
|
||||||
#
|
|
||||||
.SUFFIXES: .so
|
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# Library Locations:
|
# Library Locations:
|
||||||
# These variables describe various library locations:
|
# These variables describe various library locations:
|
||||||
@ -380,9 +386,6 @@ LinkP := $(Link) -O3 -L$(PROJLIBPROFILESOURCE) -L$(LLVMLIBPROFILESOURCE) $(PR
|
|||||||
|
|
||||||
# Create one .o file from a bunch of .o files...
|
# Create one .o file from a bunch of .o files...
|
||||||
Relink := ${LIBTOOL} --mode=link $(CXX)
|
Relink := ${LIBTOOL} --mode=link $(CXX)
|
||||||
ifndef SHARED_LIBRARY
|
|
||||||
Relink += -only-static
|
|
||||||
endif
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Configure where the item being compiled should go.
|
# Configure where the item being compiled should go.
|
||||||
|
@ -169,6 +169,17 @@ prdirs::
|
|||||||
echo "LLVM Source Root: " $(LLVM_SRC_ROOT)
|
echo "LLVM Source Root: " $(LLVM_SRC_ROOT)
|
||||||
echo "LLVM Object Root: " $(LLVM_OBJ_ROOT)
|
echo "LLVM Object Root: " $(LLVM_OBJ_ROOT)
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
# Suffixes and implicit rules:
|
||||||
|
# Empty out the list of suffixes, generate a list that is only
|
||||||
|
# used by this Makefile, and cancel useless implicit rules. This
|
||||||
|
# will hopefully speed up compilation a little bit.
|
||||||
|
###########################################################################
|
||||||
|
.SUFFIXES:
|
||||||
|
.SUFFIXES: .c .cpp .h .hpp .y .l
|
||||||
|
.SUFFIXES: .lo .o .a .so .bc
|
||||||
|
.SUFFIXES: .ps .dot .d
|
||||||
|
|
||||||
#
|
#
|
||||||
# Mark all of these targets as phony. This will hopefully speed up builds
|
# Mark all of these targets as phony. This will hopefully speed up builds
|
||||||
# slightly since GNU Make will not try to find implicit rules for targets
|
# slightly since GNU Make will not try to find implicit rules for targets
|
||||||
@ -212,11 +223,6 @@ ifdef ENABLE_PROFILING
|
|||||||
PROFILE = -pg
|
PROFILE = -pg
|
||||||
endif
|
endif
|
||||||
|
|
||||||
#
|
|
||||||
# Suffixes for library compilation rules
|
|
||||||
#
|
|
||||||
.SUFFIXES: .so
|
|
||||||
|
|
||||||
###########################################################################
|
###########################################################################
|
||||||
# Library Locations:
|
# Library Locations:
|
||||||
# These variables describe various library locations:
|
# These variables describe various library locations:
|
||||||
@ -380,9 +386,6 @@ LinkP := $(Link) -O3 -L$(PROJLIBPROFILESOURCE) -L$(LLVMLIBPROFILESOURCE) $(PR
|
|||||||
|
|
||||||
# Create one .o file from a bunch of .o files...
|
# Create one .o file from a bunch of .o files...
|
||||||
Relink := ${LIBTOOL} --mode=link $(CXX)
|
Relink := ${LIBTOOL} --mode=link $(CXX)
|
||||||
ifndef SHARED_LIBRARY
|
|
||||||
Relink += -only-static
|
|
||||||
endif
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Configure where the item being compiled should go.
|
# Configure where the item being compiled should go.
|
||||||
|
Loading…
Reference in New Issue
Block a user