Bug 1264534 - Create system wrappers for all declared STL headers. r=froydnj
authorMike Hommey <mh+mozilla@glandium.org>
Wed, 15 Jun 2016 14:44:33 +0900
changeset 301874 e1cac03485d9949c73d5ed6f703dac189422b913
parent 301873 951f972e58f920608c9d2f87428732b7cae6c804
child 301875 5748a69df90b4f22108b67c01a1e331ef9018c29
push id30343
push usercbook@mozilla.com
push dateThu, 16 Jun 2016 07:07:13 +0000
treeherdermozilla-central@6b40db156570 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersfroydnj
bugs1264534
milestone50.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 1264534 - Create system wrappers for all declared STL headers. r=froydnj Until now, we had some STL headers listed in the system-headers list such that they would get a system wrapper, but not all of them. On the other hand, the STL wrappers do the same job as the system wrappers (applying default visibility), on top of their own, so the presence of the STL headers in system-headers wasn't making much of a difference. Except we have places in the tree where we can't build with STL wrappers for a number of reasons. And in that case, we *do* need system wrappers for the STL headers, but we didn't have system wrappers for all of them. So instead of relying on the STL headers being listed both in system-headers and stl-headers, concatenate both lists to create the system wrappers.
config/Makefile.in
config/system-headers
--- a/config/Makefile.in
+++ b/config/Makefile.in
@@ -44,17 +44,17 @@ export:: $(export-preqs)
 		-DMOZ_SYSTEM_HUNSPELL=$(MOZ_SYSTEM_HUNSPELL) \
 		-DMOZ_SYSTEM_BZ2=$(MOZ_SYSTEM_BZ2) \
 		-DMOZ_SYSTEM_ZLIB=$(MOZ_SYSTEM_ZLIB) \
 		-DMOZ_SYSTEM_PNG=$(MOZ_SYSTEM_PNG) \
 		-DMOZ_SYSTEM_JPEG=$(MOZ_SYSTEM_JPEG) \
 		-DMOZ_SYSTEM_LIBEVENT=$(MOZ_SYSTEM_LIBEVENT) \
 		-DMOZ_SYSTEM_LIBVPX=$(MOZ_SYSTEM_LIBVPX) \
 		-DMOZ_SYSTEM_ICU=$(MOZ_SYSTEM_ICU) \
-		$(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
+		$(srcdir)/system-headers $(srcdir)/stl-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
 	$(INSTALL) system_wrappers $(DIST)
 
 GARBAGE_DIRS += system_wrappers
 endif
 
 ifdef WRAP_STL_INCLUDES
 ifdef GNU_CXX
 stl_compiler = gcc
--- a/config/system-headers
+++ b/config/system-headers
@@ -153,17 +153,16 @@ afxcoll.h
 afxcview.h
 afxdisp.h
 afxdtctl.h
 afxext.h
 afxmt.h
 afxpriv.h
 afxtempl.h
 afxwin.h
-algorithm
 Aliases.h
 all.h
 alloca.h
 alloc.h
 alsa/asoundlib.h
 #ifdef ANDROID
 android/ashmem.h
 android/log.h
@@ -310,34 +309,32 @@ directfb_keyboard.h
 callconv.h
 #ifdef ANDROID
 camera/Camera.h
 camera/CameraParameters.h
 #endif
 Carbon/Carbon.h
 CarbonEvents.h
 Carbon.h
-cassert
 c_asm.h
 cctype
 cderr.h
 cerrno
 CFBase.h
 CFBundle.h
 CFData.h
 CFDictionary.h
 cf.h
 CFNumber.h
 CFPlugIn.h
 CFPreferences.h
 CFString.h
 CFURL.h
 CGAffineTransform.h
 CheckBox.h
-climits
 Clipboard.h
 cmplrs/stsupport.h
 Cocoa/Cocoa.h
 CodeFragments.h
 #ifdef ANDROID
 ColorConverter.h
 #endif
 comdef.h
@@ -358,19 +355,16 @@ Cpalmrec.h
 CPCatgry.cpp
 CPDbBMgr.h
 CPString.cpp
 CPString.h
 crtdbg.h
 crt_externs.h
 crypt.h
 cstddef
-cstdio
-cstdlib
-cstring
 ctime
 ctype.h
 curl/curl.h
 curl/easy.h
 curses.h
 #ifdef ANDROID
 cutils/android_reboot.h
 cutils/atomic.h
@@ -382,17 +376,16 @@ cutils/sockets.h
 #endif
 cxxabi.h
 DateTimeUtils.h
 dbus/dbus.h
 dbus/dbus-glib.h
 dbus/dbus-glib-lowlevel.h
 ddeml.h
 Debug.h
-deque
 dem.h
 descrip.h
 Devices.h
 Dialogs.h
 direct.h
 dirent.h
 DiskInit.h
 dlfcn.h
@@ -484,17 +477,16 @@ ftadvanc.h
 ftbitmap.h
 ftxf86.h
 fribidi/fribidi.h
 FSp_fopen.h
 fstream
 fstream.h
 ft2build.h
 fts.h
-functional
 gconf/gconf-client.h
 Gdiplus.h
 gdk/gdk.h
 gdk/gdkkeysyms.h
 gdk/gdkprivate.h
 gdk/gdkx.h
 gdk/gdkdirectfb.h
 gdk-pixbuf/gdk-pixbuf.h
@@ -559,22 +551,17 @@ ints.h
 intshcut.h
 inttypes.h
 iodef.h
 io.h
 IOKit/IOKitLib.h
 IOKit/IOMessage.h
 IOKit/pwr_mgt/IOPMLib.h
 iomanip
-ios
-iosfwd
-iostream
 iostream.h
-istream
-iterator
 JavaControl.h
 JavaEmbedding/JavaControl.h
 JavaVM/jni.h
 JManager.h
 JNIEnvTests.h
 jni.h
 #if MOZ_SYSTEM_JPEG==1
 jpeglib.h
@@ -627,29 +614,27 @@ libc_r.h
 libelf.h
 libelf/libelf.h
 libgen.h
 libgnome/gnome-url.h
 libgnome/libgnome.h
 libgnomeui/gnome-icon-lookup.h
 libgnomeui/gnome-icon-theme.h
 libgnomeui/gnome-ui-init.h
-limits
 limits.h
 link.h
 #ifdef ANDROID
 linux/android_alarm.h
 linux/ashmem.h
 #endif
 linux/ioprio.h
 linux/kernel.h
 linux/limits.h
 linux/rtc.h
 linux/version.h
-list
 List.h
 Lists.h
 LListBox.h
 LListener.h
 LMenuBar.h
 LMenu.h
 LModelDirector.h
 LModelObject.h
@@ -710,17 +695,16 @@ mach/mach_port.h
 mach-o/dyld.h
 MacLocales.h
 MacMemory.h
 MacTCP.h
 MacTypes.h
 MacWindows.h
 malloc.h
 malloc_np.h
-map
 mapicode.h
 mapidefs.h
 mapiguid.h
 mapi.h
 mapitags.h
 mapiutil.h
 mapix.h
 Math64.h
@@ -767,17 +751,16 @@ media/stagefright/OMXCodec.h
 media/stagefright/openmax/OMX_Core.h
 media/stagefright/openmax/OMX_Index.h
 media/stagefright/openmax/OMX_IVCommon.h
 media/stagefright/openmax/OMX_Types.h
 media/stagefright/openmax/OMX_Video.h
 media/stagefright/Utils.h
 #endif
 mem.h
-memory
 memory.h
 Memory.h
 MenuBar.h
 Menu.h
 Menus.h
 Message.h
 Mime.h
 MixedMode.h
@@ -795,17 +778,16 @@ Navigation.h
 ncompat.h
 ncurses.h
 netCore.h
 netdb.h
 net/if.h
 netinet/in.h
 netinet/in_systm.h
 netinet/tcp.h
-new
 newexe.h
 new.h
 nl_types.h
 NodeInfo.h
 nsswitch.h
 objbase.h
 objidl.h
 Objsafe.h
@@ -816,17 +798,16 @@ oleidl.h
 OMX.h
 OMX_Component.h
 #endif
 OpenGL/OpenGL.h
 OpenTptInternet.h
 OpenTransport.h
 OS.h
 osreldate.h
-ostream
 OSUtils.h
 Packages.h
 Palettes.h
 PALM_CMN.H
 pango/pango-modules.h
 pango/pangocairo.h
 pango/pangofc-decoder.h
 pango/pangofc-font.h
@@ -906,17 +887,16 @@ Screen.h
 Script.h
 ScrollBar.h
 sec.h
 secrng.h
 security.h
 secutil.h
 semaphore.h
 servprov.h
-set
 setjmp.h
 SFNTLayoutTypes.h
 SFNTTypes.h
 sha1.h
 share.h
 shellapi.h
 shlguid.h
 shlobj.h
@@ -926,17 +906,16 @@ SimpleGameSound.h
 SIOUX.h
 size_t.h
 sndio.h
 someincludefile.h
 Sound.h
 soundcard.h
 sqlite3.h
 sstream
-stack
 #ifdef ANDROID
 stagefright/AACWriter.h
 stagefright/AMRWriter.h
 stagefright/AudioSource.h
 stagefright/DataSource.h
 stagefright/foundation/ABase.h
 stagefright/foundation/ABitReader.h
 stagefright/foundation/ABuffer.h
@@ -977,17 +956,16 @@ statreg.h
 stdarg.h
 stdbool.h
 stddef.h
 stdint.h
 stdio.h
 stdlib.h
 storage/FindDirectory.h
 StorageKit.h
-string
 StringCompare.h
 string.h
 String.h
 strings.h
 Strings.h
 StringView.h
 stropts.h
 strstrea.h
@@ -1110,17 +1088,16 @@ ThreadManagerTests.h
 Threads.h
 time.h
 Timer.h
 tlhelp32.h
 ToolUtils.h
 tr1/functional
 trace.h
 Traps.h
-type_traits
 typeinfo
 types.h
 Types.h
 UAppleEventsMgr.h
 UAttachments.h
 ucontext.h
 uconv.h
 UCursor.h
@@ -1159,17 +1136,16 @@ unix.h
 unixio.h
 unknwn.h
 UPrinting.h
 UQuickTime.h
 UReanimator.h
 URegions.h
 URegistrar.h
 UResourceMgr.h
-utility
 #ifdef ANDROID
 utils/BitSet.h
 utils/CallStack.h
 utils/Errors.h
 utils/FileMap.h
 utils/KeyedVector.h
 utils/List.h
 utils/Log.h
@@ -1191,23 +1167,21 @@ urlhist.h
 urlmon.h
 UScrap.h
 UScreenPort.h
 UTCUtils.h
 UTETextAction.h
 UTEViewTextAction.h
 UTextEdit.h
 UTextTraits.h
-utility
 utime.h
 UWindows.h
 values.h
 varargs.h
 vcclr.h
-vector
 View.h
 Volume.h
 wab.h
 wait.h
 wchar.h
 wctype.h
 winbase.h
 win/compobj.h