Bug 1264534 - Create system wrappers for all declared STL headers. r?froydnj draft
authorMike Hommey <mh+mozilla@glandium.org>
Wed, 15 Jun 2016 14:44:33 +0900
changeset 378153 32da9659be4737151983f735361f964301776394
parent 378152 6f4f910b4da63472dfa778b069d5ca1fa43d3bf8
child 523474 9bf64deb518ff2d3ca528c34ef605417437a1b20
push id20942
push userbmo:mh+mozilla@glandium.org
push dateWed, 15 Jun 2016 05:56:46 +0000
reviewersfroydnj
bugs1264534
milestone50.0a1
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