* Allow a profile'd code build to be done with a simple 'make ENABLE_PROFILING=1'
authorChris Lattner <sabre@nondot.org>
Fri, 10 May 2002 18:51:54 +0000 (18:51 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 10 May 2002 18:51:54 +0000 (18:51 +0000)
* Only build tags for include, lib, and tools, not tests
* Turn on verbose output from bison to get information about shift/reduce
  conficts (why isn't this the default??)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2603 91177308-0d34-0410-b5e6-96231b3b80d8

Makefile.common
Makefile.rules

index a376a113cabe18a74d64a95364a3ccafcf040088..03bca7e7df7d4c2f064a52be7e43a50a75b6636d 100644 (file)
@@ -49,14 +49,18 @@ PURIFY = /usr/dcs/applications/purify/bin/purify -cache-dir="$(HOME)/purifycache
 RunBurg  = $(BURG) $(BURG_OPTS)
 
 # Enable this for profiling support with 'gprof'
-#Prof = -pg
+ifdef ENABLE_PROFILING
+PROFILE = -pg
+else
+PROFILE =
+endif
 
 # TODO: Get rid of exceptions! : -fno-exceptions -fno-rtti
 # -Wno-unused-parameter
-CompileCommonOpts = $(Prof) -Wall -W  -Wwrite-strings -Wno-unused -I$(LEVEL)/include
+CompileCommonOpts = $(PROFILE) -Wall -W  -Wwrite-strings -Wno-unused -I$(LEVEL)/include
 
 # Compile a file, don't link...
-Compile  = $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $(CompileCommonOpts)
+Compile  = $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $(CompileCommonOpts) $(PROFILE)
 CompileG = $(Compile) -g  -D_DEBUG
 CompileO = $(Compile) -O3 -DNDEBUG -finline-functions -felide-constructors -fnonnull-objects -freg-struct-return -fshort-enums
 
@@ -66,7 +70,7 @@ CompileO = $(Compile) -O3 -DNDEBUG -finline-functions -felide-constructors -fnon
 ifdef ENABLE_PURIFY
 Link     = $(PURIFY) $(CXX) $(Prof) -static
 else
-Link     = LD_RUN_PATH=/usr/dcs/software/evaluation/encap/gcc-3.0.4/lib $(CXX) $(Prof) 
+Link     = LD_RUN_PATH=/usr/dcs/software/evaluation/encap/gcc-3.0.4/lib $(CXX) $(PROFILE)
 endif
 LinkG    = $(Link) -g  -L $(LEVEL)/lib/Debug
 LinkO    = $(Link) -O3 -L $(LEVEL)/lib/Release
@@ -121,7 +125,7 @@ LIBNAME_G  := $(LEVEL)/lib/Debug/lib$(LIBRARYNAME).so
 LIBNAME_AO := $(LEVEL)/lib/Release/lib$(LIBRARYNAME).a
 LIBNAME_AG := $(LEVEL)/lib/Debug/lib$(LIBRARYNAME).a
 
-all:: $(LIBNAME_AG)
+all:: $(LIBNAME_AG) ###$(LIBNAME_AO)
 dynamic:: $(LIBNAME_G)
 # TODO: Enable optimized builds
 
@@ -152,7 +156,7 @@ endif
 ifeq ($(LEVEL), .)
 
 tags:
-       etags -l c++ `find . -name '*.cpp' -o -name '*.h'`
+       etags -l c++ `find include lib tools -name '*.cpp' -o -name '*.h'`
 
 all:: tags
 
@@ -232,7 +236,7 @@ Debug/%.o: %.cpp Debug/.dir Depend/.dir
 # Rule for building the bison parsers...
 
 %.cpp %.h : %.y
-       bison -d -p $(<:%Parser.y=%) $(basename $@).y
+       bison -v -d -p $(<:%Parser.y=%) $(basename $@).y
        mv -f $(basename $@).tab.c $(basename $@).cpp
        mv -f $(basename $@).tab.h $(basename $@).h
 
index a376a113cabe18a74d64a95364a3ccafcf040088..03bca7e7df7d4c2f064a52be7e43a50a75b6636d 100644 (file)
@@ -49,14 +49,18 @@ PURIFY = /usr/dcs/applications/purify/bin/purify -cache-dir="$(HOME)/purifycache
 RunBurg  = $(BURG) $(BURG_OPTS)
 
 # Enable this for profiling support with 'gprof'
-#Prof = -pg
+ifdef ENABLE_PROFILING
+PROFILE = -pg
+else
+PROFILE =
+endif
 
 # TODO: Get rid of exceptions! : -fno-exceptions -fno-rtti
 # -Wno-unused-parameter
-CompileCommonOpts = $(Prof) -Wall -W  -Wwrite-strings -Wno-unused -I$(LEVEL)/include
+CompileCommonOpts = $(PROFILE) -Wall -W  -Wwrite-strings -Wno-unused -I$(LEVEL)/include
 
 # Compile a file, don't link...
-Compile  = $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $(CompileCommonOpts)
+Compile  = $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $(CompileCommonOpts) $(PROFILE)
 CompileG = $(Compile) -g  -D_DEBUG
 CompileO = $(Compile) -O3 -DNDEBUG -finline-functions -felide-constructors -fnonnull-objects -freg-struct-return -fshort-enums
 
@@ -66,7 +70,7 @@ CompileO = $(Compile) -O3 -DNDEBUG -finline-functions -felide-constructors -fnon
 ifdef ENABLE_PURIFY
 Link     = $(PURIFY) $(CXX) $(Prof) -static
 else
-Link     = LD_RUN_PATH=/usr/dcs/software/evaluation/encap/gcc-3.0.4/lib $(CXX) $(Prof) 
+Link     = LD_RUN_PATH=/usr/dcs/software/evaluation/encap/gcc-3.0.4/lib $(CXX) $(PROFILE)
 endif
 LinkG    = $(Link) -g  -L $(LEVEL)/lib/Debug
 LinkO    = $(Link) -O3 -L $(LEVEL)/lib/Release
@@ -121,7 +125,7 @@ LIBNAME_G  := $(LEVEL)/lib/Debug/lib$(LIBRARYNAME).so
 LIBNAME_AO := $(LEVEL)/lib/Release/lib$(LIBRARYNAME).a
 LIBNAME_AG := $(LEVEL)/lib/Debug/lib$(LIBRARYNAME).a
 
-all:: $(LIBNAME_AG)
+all:: $(LIBNAME_AG) ###$(LIBNAME_AO)
 dynamic:: $(LIBNAME_G)
 # TODO: Enable optimized builds
 
@@ -152,7 +156,7 @@ endif
 ifeq ($(LEVEL), .)
 
 tags:
-       etags -l c++ `find . -name '*.cpp' -o -name '*.h'`
+       etags -l c++ `find include lib tools -name '*.cpp' -o -name '*.h'`
 
 all:: tags
 
@@ -232,7 +236,7 @@ Debug/%.o: %.cpp Debug/.dir Depend/.dir
 # Rule for building the bison parsers...
 
 %.cpp %.h : %.y
-       bison -d -p $(<:%Parser.y=%) $(basename $@).y
+       bison -v -d -p $(<:%Parser.y=%) $(basename $@).y
        mv -f $(basename $@).tab.c $(basename $@).cpp
        mv -f $(basename $@).tab.h $(basename $@).h