Bug 678867: Eradicate VPATH abuse from js/src. r=ted
authorKyle Huey <khuey@kylehuey.com>
Wed, 17 Aug 2011 14:15:06 -0400
changeset 76774 c5882ebe849983442f77ea1992a82638307c05fd
parent 76773 5d1198b8ba0ac9d6789f4276b397803af9a18399
child 76775 e3f681b8147fc042399e654e6b1561801287cb22
push id78
push userclegnitto@mozilla.com
push dateFri, 16 Dec 2011 17:32:24 +0000
treeherdermozilla-release@79d24e644fdd [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersted
bugs678867
milestone9.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 678867: Eradicate VPATH abuse from js/src. r=ted
js/src/Makefile.in
--- a/js/src/Makefile.in
+++ b/js/src/Makefile.in
@@ -477,21 +477,20 @@ ifeq (arm, $(TARGET_CPU))
 endif
 #
 # END enclude sources for the Nitro assembler
 #############################################
 
 endif
 
 ifdef JS_HAS_CTYPES
-VPATH += $(srcdir)/ctypes
 
 CPPSRCS += \
-    CTypes.cpp \
-    Library.cpp \
+    ctypes/CTypes.cpp \
+    ctypes/Library.cpp \
     $(NULL)
 
 ifdef MOZ_NATIVE_FFI
 LOCAL_INCLUDES = $(MOZ_FFI_CFLAGS)
 else
 LOCAL_INCLUDES = -Ictypes/libffi/include
 endif
 
@@ -521,23 +520,22 @@ INSTALLED_HEADERS += \
 		$(CURDIR)/javascript-trace.h \
 		$(NULL)
 endif
 
 # PerfMeasurement is available regardless of low-level support for it;
 # it just doesn't necessarily do anything useful.  There is one
 # implementation source file per supported operating system, plus a stub
 # for unsupported OSes, plus the Javascript wrapper.
-VPATH += $(srcdir)/perf
-INSTALLED_HEADERS += jsperf.h
-CPPSRCS += jsperf.cpp
+INSTALLED_HEADERS += perf/jsperf.h
+CPPSRCS += perf/jsperf.cpp
 ifdef HAVE_LINUX_PERF_EVENT_H
-CPPSRCS += pm_linux.cpp
+CPPSRCS += perf/pm_linux.cpp
 else
-CPPSRCS += pm_stub.cpp
+CPPSRCS += perf/pm_stub.cpp
 endif
 
 ifeq ($(OS_ARCH),WINNT)
 INSTALLED_HEADERS += jscpucfg.h
 endif
 
 EXPORTS = $(INSTALLED_HEADERS)
 
@@ -740,16 +738,24 @@ DIST_GARBAGE = config.cache config.log c
 
 distclean::
 	cat unallmakefiles | $(XARGS) rm -f
 	$(RM) $(DIST_GARBAGE)
 
 # our build system doesn't handle subdir srcs very gracefully today
 export::
 	$(MKDIR) -p nanojit
+	$(MKDIR) -p vm
+	$(MKDIR) -p frontend
+	$(MKDIR) -p tracejit
+	$(MKDIR) -p methodjit
+	$(MKDIR) -p v8-dtoa
+	$(MKDIR) -p perf
+
+GARBAGE_DIRS += nanojit vm frontend tracejit methodjit v8-dtoa perf
 
 DEFINES		+= -DEXPORT_JS_API
 
 # mfbt is always packed with us, so if we're building a shared object,
 # we need to declare "exported" mfbt symbols on its behalf when we use
 # its headers.
 DEFINES		+= -DIMPL_MFBT