Rewrite makefiles to explicitly reference DESTDIR to fix bug 3153.
authorErick Tryzelaar <idadesub@users.sourceforge.net>
Thu, 4 Mar 2010 20:56:19 +0000 (20:56 +0000)
committerErick Tryzelaar <idadesub@users.sourceforge.net>
Thu, 4 Mar 2010 20:56:19 +0000 (20:56 +0000)
We need this so can not bake DESTDIR into the O'Caml symlinks.

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

Makefile.config.in
Makefile.rules
docs/CommandGuide/Makefile
docs/Makefile
docs/tutorial/Makefile
lib/VMCore/Makefile
tools/llvm-config/Makefile

index aca21e5b7d110478db8c2f9324a3ddc30e805073..1b61f0908a8cefb8cc06bafd2e17ad3d5ff62d01 100644 (file)
@@ -76,14 +76,14 @@ endif
 
 LLVMMAKE := $(LLVM_SRC_ROOT)/make
 
-PROJ_bindir     := $(DESTDIR)$(PROJ_prefix)/bin
-PROJ_libdir     := $(DESTDIR)$(PROJ_prefix)/lib
-PROJ_datadir    := $(DESTDIR)$(PROJ_prefix)/share
-PROJ_docsdir    := $(DESTDIR)$(PROJ_prefix)/docs/llvm
-PROJ_etcdir     := $(DESTDIR)$(PROJ_prefix)/etc/llvm
-PROJ_includedir := $(DESTDIR)$(PROJ_prefix)/include
-PROJ_infodir    := $(DESTDIR)$(PROJ_prefix)/info
-PROJ_mandir     := $(DESTDIR)$(PROJ_prefix)/share/man
+PROJ_bindir     := $(PROJ_prefix)/bin
+PROJ_libdir     := $(PROJ_prefix)/lib
+PROJ_datadir    := $(PROJ_prefix)/share
+PROJ_docsdir    := $(PROJ_prefix)/docs/llvm
+PROJ_etcdir     := $(PROJ_prefix)/etc/llvm
+PROJ_includedir := $(PROJ_prefix)/include
+PROJ_infodir    := $(PROJ_prefix)/info
+PROJ_mandir     := $(PROJ_prefix)/share/man
 
 # Determine if we're on a unix type operating system
 LLVM_ON_UNIX:=@LLVM_ON_UNIX@
index b5b35256b794143034e3dae0f7a7b76ba5719199..fcddd50c3a283cf5efea15645ee216a51f7cc552 100644 (file)
@@ -781,7 +781,7 @@ ObjectsBC := $(BaseNameSources:%=$(ObjDir)/%.bc)
 # in the file so they get built before dependencies
 #---------------------------------------------------------
 
-$(PROJ_bindir) $(PROJ_libdir) $(PROJ_includedir) $(PROJ_etcdir)::
+$(DESTDIR)$(PROJ_bindir) $(DESTDIR)$(PROJ_libdir) $(DESTDIR)$(PROJ_includedir) $(DESTDIR)$(PROJ_etcdir)::
        $(Verb) $(MKDIR) $@
 
 # To create other directories, as needed, and timestamp their creation
@@ -904,22 +904,22 @@ install-local::
 uninstall-local::
        $(Echo) UnInstall circumvented with NO_INSTALL
 else
-install-local:: $(PROJ_etcdir) $(CONFIG_FILES)
-       $(Echo) Installing Configuration Files To $(PROJ_etcdir)
+install-local:: $(DESTDIR)$(PROJ_etcdir) $(CONFIG_FILES)
+       $(Echo) Installing Configuration Files To $(DESTDIR)$(PROJ_etcdir)
        $(Verb)for file in $(CONFIG_FILES); do \
           if test -f $(PROJ_OBJ_DIR)/$${file} ; then \
-            $(DataInstall) $(PROJ_OBJ_DIR)/$${file} $(PROJ_etcdir) ; \
+            $(DataInstall) $(PROJ_OBJ_DIR)/$${file} $(DESTDIR)$(PROJ_etcdir) ; \
           elif test -f $(PROJ_SRC_DIR)/$${file} ; then \
-            $(DataInstall) $(PROJ_SRC_DIR)/$${file} $(PROJ_etcdir) ; \
+            $(DataInstall) $(PROJ_SRC_DIR)/$${file} $(DESTDIR)$(PROJ_etcdir) ; \
           else \
             $(ECHO) Error: cannot find config file $${file}. ; \
           fi \
        done
 
 uninstall-local::
-       $(Echo) Uninstalling Configuration Files From $(PROJ_etcdir)
+       $(Echo) Uninstalling Configuration Files From $(DESTDIR)$(PROJ_etcdir)
        $(Verb)for file in $(CONFIG_FILES); do \
-         $(RM) -f $(PROJ_etcdir)/$${file} ; \
+         $(RM) -f $(DESTDIR)$(PROJ_etcdir)/$${file} ; \
        done
 endif
 
@@ -1011,7 +1011,7 @@ endif
 ifdef BYTECODE_DESTINATION
 ModuleDestDir := $(BYTECODE_DESTINATION)
 else
-ModuleDestDir := $(PROJ_libdir)
+ModuleDestDir := $(DESTDIR)$(PROJ_libdir)
 endif
 
 ifdef NO_INSTALL
@@ -1090,17 +1090,17 @@ install-local::
 uninstall-local::
        $(Echo) Uninstall circumvented with NO_INSTALL
 else
-DestSharedLib = $(PROJ_libdir)/lib$(LIBRARYNAME)$(SHLIBEXT)
+DestSharedLib = $(DESTDIR)$(PROJ_libdir)/lib$(LIBRARYNAME)$(SHLIBEXT)
 
 install-local:: $(DestSharedLib)
 
-$(DestSharedLib): $(LibName.SO) $(PROJ_libdir)
+$(DestSharedLib): $(LibName.SO) $(DESTDIR)$(PROJ_libdir)
        $(Echo) Installing $(BuildMode) Shared Library $(DestSharedLib)
        $(Verb) $(INSTALL) $(LibName.SO) $(DestSharedLib)
 
 uninstall-local::
        $(Echo) Uninstalling $(BuildMode) Shared Library $(DestSharedLib)
-       -$(Verb) $(RM) -f $(PROJ_libdir)/lib$(LIBRARYNAME).*
+       -$(Verb) $(RM) -f $(DESTDIR)$(PROJ_libdir)/lib$(LIBRARYNAME).*
 endif
 endif
 
@@ -1144,7 +1144,7 @@ endif
 ifdef BYTECODE_DESTINATION
 BytecodeDestDir := $(BYTECODE_DESTINATION)
 else
-BytecodeDestDir := $(PROJ_libdir)
+BytecodeDestDir := $(DESTDIR)$(PROJ_libdir)
 endif
 
 DestBytecodeLib = $(BytecodeDestDir)/lib$(LIBRARYNAME).bca
@@ -1209,13 +1209,13 @@ install-local::
 uninstall-local::
        $(Echo) Uninstall circumvented with NO_INSTALL
 else
-DestArchiveLib := $(PROJ_libdir)/lib$(LIBRARYNAME).a
+DestArchiveLib := $(DESTDIR)$(PROJ_libdir)/lib$(LIBRARYNAME).a
 
 install-local:: $(DestArchiveLib)
 
-$(DestArchiveLib): $(LibName.A) $(PROJ_libdir)
+$(DestArchiveLib): $(LibName.A) $(DESTDIR)$(PROJ_libdir)
        $(Echo) Installing $(BuildMode) Archive Library $(DestArchiveLib)
-       $(Verb) $(MKDIR) $(PROJ_libdir)
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_libdir)
        $(Verb) $(INSTALL) $(LibName.A) $(DestArchiveLib)
 
 uninstall-local::
@@ -1315,11 +1315,11 @@ install-local::
 uninstall-local::
        $(Echo) Uninstall circumvented with NO_INSTALL
 else
-DestTool = $(PROJ_bindir)/$(TOOLEXENAME)
+DestTool = $(DESTDIR)$(PROJ_bindir)/$(TOOLEXENAME)
 
 install-local:: $(DestTool)
 
-$(DestTool): $(ToolBuildPath) $(PROJ_bindir)
+$(DestTool): $(ToolBuildPath) $(DESTDIR)$(PROJ_bindir)
        $(Echo) Installing $(BuildMode) $(DestTool)
        $(Verb) $(ProgInstall) $(ToolBuildPath) $(DestTool)
 
@@ -1964,25 +1964,25 @@ uninstall-local::
 else
 install-local::
        $(Echo) Installing include files
-       $(Verb) $(MKDIR) $(PROJ_includedir)
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_includedir)
        $(Verb) if test -d "$(PROJ_SRC_ROOT)/include" ; then \
          cd $(PROJ_SRC_ROOT)/include && \
          for  hdr in `find . -type f '!' '(' -name '*~' \
              -o -name '.#*' -o -name '*.in' ')' -print | grep -v CVS | \
              grep -v .svn` ; do \
-           instdir=`dirname "$(PROJ_includedir)/$$hdr"` ; \
+           instdir=`dirname "$(DESTDIR)$(PROJ_includedir)/$$hdr"` ; \
            if test \! -d "$$instdir" ; then \
              $(EchoCmd) Making install directory $$instdir ; \
              $(MKDIR) $$instdir ;\
            fi ; \
-           $(DataInstall) $$hdr $(PROJ_includedir)/$$hdr ; \
+           $(DataInstall) $$hdr $(DESTDIR)$(PROJ_includedir)/$$hdr ; \
          done ; \
        fi
 ifneq ($(PROJ_SRC_ROOT),$(PROJ_OBJ_ROOT))
        $(Verb) if test -d "$(PROJ_OBJ_ROOT)/include" ; then \
          cd $(PROJ_OBJ_ROOT)/include && \
          for hdr in `find . -type f -print | grep -v CVS` ; do \
-           $(DataInstall) $$hdr $(PROJ_includedir)/$$hdr ; \
+           $(DataInstall) $$hdr $(DESTDIR)$(PROJ_includedir)/$$hdr ; \
          done ; \
        fi
 endif
@@ -1994,10 +1994,10 @@ uninstall-local::
            $(RM) -f `find . -path '*/Internal' -prune -o '(' -type f \
              '!' '(' -name '*~' -o -name '.#*' \
         -o -name '*.in' ')' -print ')' | \
-        grep -v CVS | sed 's#^#$(PROJ_includedir)/#'` ; \
+        grep -v CVS | sed 's#^#$(DESTDIR)$(PROJ_includedir)/#'` ; \
          cd $(PROJ_SRC_ROOT)/include && \
            $(RM) -f `find . -path '*/Internal' -prune -o '(' -type f -name '*.in' \
-      -print ')' | sed 's#\.in$$##;s#^#$(PROJ_includedir)/#'` ; \
+      -print ')' | sed 's#\.in$$##;s#^#$(DESTDIR)$(PROJ_includedir)/#'` ; \
        fi
 endif
 endif
index 3b65183107263a6eba58aad42d5680996eb82234..2c2d0760e799becbbc3d0b4e569b4757d554d9e1 100644 (file)
@@ -77,9 +77,9 @@ EXTRA_DIST := $(POD) index.html
 clean-local::
        $(Verb) $(RM) -f pod2htm*.*~~ $(HTML) $(MAN) $(PS)
 
-HTML_DIR := $(PROJ_docsdir)/html/CommandGuide
-MAN_DIR  := $(PROJ_mandir)/man1
-PS_DIR   := $(PROJ_docsdir)/ps
+HTML_DIR := $(DESTDIR)$(PROJ_docsdir)/html/CommandGuide
+MAN_DIR  := $(DESTDIR)$(PROJ_mandir)/man1
+PS_DIR   := $(DESTDIR)$(PROJ_docsdir)/ps
 
 install-local:: $(HTML) $(INSTALL_MANS) $(PS)
        $(Echo) Installing HTML CommandGuide Documentation
index 5bfa6c3cfb3f5ec99ec6b7515cdc50ab59422df8..8f7d6171d3b336e7c7c5882028d91de656edd5d2 100644 (file)
@@ -48,11 +48,11 @@ generated:: doxygen ocamldoc
 
 install-html: $(PROJ_OBJ_DIR)/html.tar.gz
        $(Echo) Installing HTML documentation
-       $(Verb) $(MKDIR) $(PROJ_docsdir)/html
-       $(Verb) $(MKDIR) $(PROJ_docsdir)/html/img
-       $(Verb) $(DataInstall) $(HTML) $(PROJ_docsdir)/html
-       $(Verb) $(DataInstall) $(IMAGES) $(PROJ_docsdir)/html/img
-       $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(PROJ_docsdir)
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/img
+       $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html
+       $(Verb) $(DataInstall) $(IMAGES) $(DESTDIR)$(PROJ_docsdir)/html/img
+       $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir)
 
 $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML)
        $(Echo) Packaging HTML documentation
@@ -63,11 +63,11 @@ $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML)
 
 install-doxygen: doxygen
        $(Echo) Installing doxygen documentation
-       $(Verb) $(MKDIR) $(PROJ_docsdir)/html/doxygen
-       $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(PROJ_docsdir)
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen
+       $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir)
        $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \
          $(FIND) . -type f -exec \
-           $(DataInstall) {} $(PROJ_docsdir)/html/doxygen \;
+           $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \;
 
 doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz
 
@@ -94,11 +94,11 @@ $(LLVM_SRC_ROOT)/docs/userloc.html:
 
 install-ocamldoc: ocamldoc
        $(Echo) Installing ocamldoc documentation
-       $(Verb) $(MKDIR) $(PROJ_docsdir)/ocamldoc/html
-       $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(PROJ_docsdir)
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html
+       $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(DESTDIR)$(PROJ_docsdir)
        $(Verb) cd $(PROJ_OBJ_DIR)/ocamldoc && \
          $(FIND) . -type f -exec \
-           $(DataInstall) {} $(PROJ_docsdir)/ocamldoc/html \;
+           $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html \;
 
 ocamldoc: regen-ocamldoc
        $(Echo) Packaging ocamldoc documentation
@@ -120,4 +120,4 @@ regen-ocamldoc:
 
 uninstall-local::
        $(Echo) Uninstalling Documentation
-       $(Verb) $(RM) -rf $(PROJ_docsdir)
+       $(Verb) $(RM) -rf $(DESTDIR)$(PROJ_docsdir)
index 6169bb82416ba3279f1dfb17a5067afefa0b07ef..9082ad4d8575ef9a5f19694f19b9df8869dc37ab 100644 (file)
@@ -12,7 +12,7 @@ include $(LEVEL)/Makefile.common
 
 HTML       := $(wildcard $(PROJ_SRC_DIR)/*.html)
 EXTRA_DIST := $(HTML) index.html
-HTML_DIR   := $(PROJ_docsdir)/html/tutorial
+HTML_DIR   := $(DESTDIR)$(PROJ_docsdir)/html/tutorial
 
 install-local:: $(HTML)
        $(Echo) Installing HTML Tutorial Documentation
index bc5e77d22de597a3b1330df46b95957bf0f3b20d..4395ecfda05bb1b37db678365073cf50c797f6a3 100644 (file)
@@ -30,5 +30,5 @@ $(GENFILE): $(ObjDir)/Intrinsics.gen.tmp
            changed significantly. )
 
 install-local:: $(GENFILE)
-       $(Echo) Installing $(PROJ_includedir)/llvm/Intrinsics.gen
-       $(Verb) $(DataInstall) $(GENFILE) $(PROJ_includedir)/llvm/Intrinsics.gen
+       $(Echo) Installing $(DESTDIR)$(PROJ_includedir)/llvm/Intrinsics.gen
+       $(Verb) $(DataInstall) $(GENFILE) $(DESTDIR)$(PROJ_includedir)/llvm/Intrinsics.gen
index cc5cf43606b3edb1827fcdd3f649264efc6a4ad0..c7f7b3234d64b6633f3ae2c6c2b8cabbc6e01dbf 100644 (file)
@@ -126,6 +126,6 @@ clean-local::
          $(LibDeps) GenLibDeps.out
 install-local:: all-local
        $(Echo) Installing llvm-config
-       $(Verb) $(MKDIR) $(PROJ_bindir)
-       $(Verb) $(ScriptInstall) $(ToolDir)/llvm-config $(PROJ_bindir)
+       $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_bindir)
+       $(Verb) $(ScriptInstall) $(ToolDir)/llvm-config $(DESTDIR)$(PROJ_bindir)