Ravenports generated: 28 Jun 2018 10:51
[ravenports.git] / bucket_8B / spidermonkey
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               spidermonkey
4 VERSION=                52.9.0
5 KEYWORDS=               lang
6 VARIANTS=               standard
7 SDESC[standard]=        Standalone JS interpreter from Mozilla 52-esr
8 HOMEPAGE=               https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
9 CONTACT=                Michael_Reim[kraileth@elderlinux.org]
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            https://archive.mozilla.org/pub/firefox/releases/52.9.0esr/source/
13 DISTFILE[1]=            firefox-52.9.0esr.source.tar.xz:main
14 DF_INDEX=               1
15 SPKGS[standard]=        single
16
17 OPTIONS_AVAILABLE=      none
18 OPTIONS_STANDARD=       none
19
20 BUILD_DEPENDS=          autoconf213:single:standard
21                         zip:single:standard
22 BUILDRUN_DEPENDS=       icu:single:standard
23                         nspr:single:standard
24
25 USES=                   gmake perl pkgconfig python:py27,build zlib readline
26
27 DISTNAME=               firefox-52.9.0esr/js/src
28
29 MUST_CONFIGURE=         gnu
30 CONFIGURE_ARGS=         --disable-debug
31                         --disable-debug-symbols
32                         --enable-readline
33                         --enable-release
34                         --enable-shared-js
35                         --enable-tests
36                         --with-intl-api
37                         --with-pthreads
38                         --with-system-nspr
39                         --with-system-icu
40                         --with-system-zlib
41
42 PLIST_SUB=              MOZJS_MAJOR=52
43                         MOZJS_MINOR=9
44
45 VAR_OPSYS[dragonfly]=   CONFIGURE_ARGS=--disable-jemalloc
46
47 post-patch:
48         touch ${WRKSRC}/configure
49
50 post-install:
51         ${LN} -s libmozjs-52.so \
52                 ${STAGEDIR}${PREFIX}/lib/libmozjs-52.9.so.1
53         ${LN} -s libmozjs-52.so \
54                 ${STAGEDIR}${PREFIX}/lib/libmozjs-52.so.0
55         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/js52
56         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmozjs-52.so
57
58 post-extract:
59         ${CP} /port/files/configure ${WRKSRC}
60
61 [FILE:126:descriptions/desc.single]
62 SpiderMonkey is Mozilla's JavaScript engine written in C and C++. It is 
63 used in various Mozilla products, including Firefox.
64
65
66 [FILE:110:distinfo]
67 c01d09658c53c1b3a496e353a24dad03b26b81d3b1d099abc26a06f81c199dd6    214087304 firefox-52.9.0esr.source.tar.xz
68
69
70 [FILE:2644:manifests/plist.single]
71 %%ONLY-FREEBSD%%include/mozjs-%%MOZJS_MAJOR%%/
72  jemalloc_types.h
73  mozmemory.h
74  mozmemory_wrap.h
75  mozzconf.h
76  zconf.h
77  zlib.h
78 bin/
79  js%%MOZJS_MAJOR%%
80  js%%MOZJS_MAJOR%%-config
81 include/mozjs-%%MOZJS_MAJOR%%/
82  fdlibm.h
83  js-config.h
84  js.msg
85  jsalloc.h
86  jsapi.h
87  jsbytecode.h
88  jsclist.h
89  jscpucfg.h
90  jsfriendapi.h
91  jsperf.h
92  jsprf.h
93  jsprototypes.h
94  jspubtd.h
95  jstypes.h
96  jsversion.h
97  jswrapper.h
98 include/mozjs-%%MOZJS_MAJOR%%/js/
99  CallArgs.h
100  CallNonGenericMethod.h
101  CharacterEncoding.h
102  Class.h
103  Conversions.h
104  Date.h
105  Debug.h
106  GCAPI.h
107  GCAnnotations.h
108  GCHashTable.h
109  GCPolicyAPI.h
110  GCVariant.h
111  GCVector.h
112  HashTable.h
113  HeapAPI.h
114  Id.h
115  Initialization.h
116  LegacyIntTypes.h
117  MemoryMetrics.h
118  Principals.h
119  ProfilingFrameIterator.h
120  ProfilingStack.h
121  Proxy.h
122  Realm.h
123  RequiredDefines.h
124  RootingAPI.h
125  SliceBudget.h
126  StructuredClone.h
127  SweepingAPI.h
128  TraceKind.h
129  TracingAPI.h
130  TrackedOptimizationInfo.h
131  TypeDecls.h
132  UbiNode.h
133  UbiNodeBreadthFirst.h
134  UbiNodeCensus.h
135  UbiNodeDominatorTree.h
136  UbiNodePostOrder.h
137  UbiNodeShortestPaths.h
138  UniquePtr.h
139  Utility.h
140  Value.h
141  Vector.h
142  WeakMapPtr.h
143 include/mozjs-%%MOZJS_MAJOR%%/mozilla/
144  Alignment.h
145  AllocPolicy.h
146  AlreadyAddRefed.h
147  Array.h
148  ArrayUtils.h
149  Assertions.h
150  Atomics.h
151  Attributes.h
152  BinarySearch.h
153  BloomFilter.h
154  BufferList.h
155  Casting.h
156  ChaosMode.h
157  Char16.h
158  CheckedInt.h
159  Compiler.h
160  Compression.h
161  DebugOnly.h
162  Decimal.h
163  EndianUtils.h
164  EnumSet.h
165  EnumTypeTraits.h
166  EnumeratedArray.h
167  EnumeratedRange.h
168  FastBernoulliTrial.h
169  FloatingPoint.h
170  Function.h
171  GuardObjects.h
172  HashFunctions.h
173  IndexSequence.h
174  IntegerPrintfMacros.h
175  IntegerRange.h
176  IntegerTypeTraits.h
177  JSONWriter.h
178  Likely.h
179  LinkedList.h
180  MacroArgs.h
181  MacroForEach.h
182  MathAlgorithms.h
183  Maybe.h
184  MaybeOneOf.h
185  MemoryChecking.h
186  MemoryReporting.h
187  Move.h
188  NotNull.h
189  NullPtr.h
190  Opaque.h
191  OperatorNewExtensions.h
192  Pair.h
193  PodOperations.h
194  Poison.h
195  Range.h
196  RangedArray.h
197  RangedPtr.h
198  ReentrancyGuard.h
199  RefCountType.h
200  RefCounted.h
201  RefPtr.h
202  ReverseIterator.h
203  RollingMean.h
204  SHA1.h
205  Saturate.h
206  ScopeExit.h
207  Scoped.h
208  SegmentedVector.h
209  SizePrintfMacros.h
210  SplayTree.h
211  Sprintf.h
212  StackWalk.h
213  StaticAnalysisFunctions.h
214  TaggedAnonymousMemory.h
215  TemplateLib.h
216  TextUtils.h
217  ThreadLocal.h
218  TimeStamp.h
219  ToString.h
220  Tuple.h
221  TypeTraits.h
222  TypedEnumBits.h
223  Types.h
224  UniquePtr.h
225  UniquePtrExtensions.h
226  Unused.h
227  Variant.h
228  Vector.h
229  WeakPtr.h
230  XorShift128PlusRNG.h
231  double-conversion.h
232  fallible.h
233  mozalloc.h
234  mozalloc_abort.h
235  mozalloc_oom.h
236  utils.h
237 lib/
238  libjs_static.ajs
239  libmozjs-%%MOZJS_MAJOR%%.%%MOZJS_MINOR%%.so.1
240  libmozjs-%%MOZJS_MAJOR%%.so
241  libmozjs-%%MOZJS_MAJOR%%.so.0
242 lib/pkgconfig/mozjs-%%MOZJS_MAJOR%%.pc
243
244
245 [FILE:540:patches/patch-build_moz.configure_init.configure]
246 --- ../../build/moz.configure/init.configure.orig       2018-01-11 18:49:42 UTC
247 +++ ../../build/moz.configure/init.configure
248 @@ -344,8 +344,8 @@ def split_triplet(triplet):
249      if cpu.endswith('86') or (cpu.startswith('i') and '86' in cpu):
250          canonical_cpu = 'x86'
251          endianness = 'little'
252 -    elif cpu in ('x86_64', 'ia64'):
253 -        canonical_cpu = cpu
254 +    elif cpu in ('x86_64', 'ia64', 'amd64'):
255 +        canonical_cpu = 'x86_64'
256          endianness = 'little'
257      elif cpu in ('s390', 's390x'):
258          canonical_cpu = cpu
259
260
261 [FILE:552:patches/patch-config_rules.mk]
262 --- ../../config/rules.mk.orig  2018-01-11 18:49:42 UTC
263 +++ ../../config/rules.mk
264 @@ -418,7 +418,7 @@ endif # AIX
265  #
266  # Linux: add -Bsymbolic flag for components
267  #
268 -ifeq ($(OS_ARCH),Linux)
269 +#ifeq ($(OS_ARCH),Linux)
270  ifdef IS_COMPONENT
271  EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic
272  endif
273 @@ -426,7 +426,8 @@ ifdef LD_VERSION_SCRIPT
274  EXTRA_DSO_LDOPTS += -Wl,--version-script,$(LD_VERSION_SCRIPT)
275  EXTRA_DEPS += $(LD_VERSION_SCRIPT)
276  endif
277 -endif
278 +#endif
279 +EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0
280  
281  ifdef SYMBOLS_FILE
282  ifeq ($(OS_TARGET),WINNT)
283
284
285 [FILE:908:patches/patch-js_src_old-configure.in]
286 --- old-configure.in.orig       2018-01-11 18:49:44 UTC
287 +++ old-configure.in
288 @@ -1623,16 +1623,21 @@ dnl ====================================
289  dnl = Enable jemalloc
290  dnl ========================================================
291  
292 -case "${OS_TARGET}" in
293 -Android|WINNT|Darwin)
294 +dnl In stand-alone builds we always only want to link executables against mozglue.
295 +if test "$JS_STANDALONE"; then
296    MOZ_GLUE_IN_PROGRAM=
297 -  ;;
298 -*)
299 -  dnl On !Android !Windows !OSX, we only want to link executables against mozglue
300 -  MOZ_GLUE_IN_PROGRAM=1
301 -  AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
302 -  ;;
303 -esac
304 +else
305 +  case "${OS_TARGET}" in
306 +  Android|WINNT|Darwin)
307 +    MOZ_GLUE_IN_PROGRAM=
308 +    ;;
309 +  *)
310 +    dnl On !Android !Windows !OSX, we only want to link executables against mozglue
311 +    MOZ_GLUE_IN_PROGRAM=1
312 +    AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
313 +    ;;
314 +  esac
315 +fi
316  
317  if test "$MOZ_MEMORY"; then
318    if test "x$MOZ_DEBUG" = "x1"; then
319
320
321 [FILE:475:patches/patch-mozglue_build_moz.build]
322 --- ../../mozglue/build/moz.build.orig  2018-01-11 18:49:46 UTC
323 +++ ../../mozglue/build/moz.build
324 @@ -6,7 +6,7 @@
325  
326  # Build mozglue as a shared lib on Windows, OSX and Android.
327  # If this is ever changed, update MOZ_SHARED_MOZGLUE in browser/installer/Makefile.in
328 -if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android'):
329 +if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android') and not CONFIG['JS_STANDALONE']:
330      SharedLibrary('mozglue')
331  else:
332      Library('mozglue')
333
334
335 [FILE:379:patches/patch-python_mach_mach_mixin_process.py]
336 --- ../../python/mach/mach/mixin/process.py.orig        2018-04-01 13:37:29.893787000 +0200
337 +++ ../../python/mach/mach/mixin/process.py     2018-04-01 13:38:10.188973000 +0200
338 @@ -26,7 +26,7 @@
339  elif 'COMSPEC' in os.environ:
340      _current_shell = os.environ['COMSPEC']
341  else:
342 -    raise Exception('Could not detect environment shell!')
343 +    _current_shell = "/bin/sh"
344  
345  _in_msys = False
346  
347
348
349 [FILE:1099:patches/patch-python_mozbuild_mozbuild_backend_recursivemake.py]
350 --- ../../python/mozbuild/mozbuild/backend/recursivemake.py.orig        2018-01-11 18:49:46 UTC
351 +++ ../../python/mozbuild/mozbuild/backend/recursivemake.py
352 @@ -1307,11 +1307,11 @@ class RecursiveMakeBackend(CommonBackend
353                                  raise Exception("Wildcards are only supported in the filename part of "
354                                                  "srcdir-relative or absolute paths.")
355  
356 -                            install_manifest.add_pattern_symlink(basepath, wild, path)
357 +                            install_manifest.add_pattern_copy(basepath, wild, path)
358                          else:
359 -                            install_manifest.add_pattern_symlink(f.srcdir, f, path)
360 +                            install_manifest.add_pattern_copy(f.srcdir, f, path)
361                      else:
362 -                        install_manifest.add_symlink(f.full_path, dest)
363 +                        install_manifest.add_copy(f.full_path, dest)
364                  else:
365                      install_manifest.add_optional_exists(dest)
366                      backend_file.write('%s_FILES += %s\n' % (
367
368
369 [FILE:572:patches/patch-python_mozbuild_mozbuild_configure_____init____.py]
370 --- ../../python/mozbuild/mozbuild/configure/__init__.py.orig   2018-01-11 18:49:46 UTC
371 +++ ../../python/mozbuild/mozbuild/configure/__init__.py
372 @@ -356,7 +356,7 @@ class ConfigureSandbox(dict):
373          # All options should have been removed (handled) by now.
374          for arg in self._helper:
375              without_value = arg.split('=', 1)[0]
376 -            raise InvalidOptionError('Unknown option: %s' % without_value)
377 +            print('Ignoring', without_value, ': Unknown option')
378  
379          # Run the execution queue
380          for func, args in self._execution_queue:
381
382
383 [FILE:659:patches/patch-python_mozbuild_mozbuild_configure_options.py]
384 --- ../../python/mozbuild/mozbuild/configure/options.py.orig    2018-01-11 18:49:46 UTC
385 +++ ../../python/mozbuild/mozbuild/configure/options.py
386 @@ -402,7 +402,11 @@ class CommandLineHelper(object):
387  
388      def add(self, arg, origin='command-line', args=None):
389          assert origin != 'default'
390 -        prefix, name, values = Option.split_option(arg)
391 +        try:
392 +            prefix, name, values = Option.split_option(arg)
393 +        except InvalidOptionError as e:
394 +            print('Ignoring', arg, ':', e)
395 +            return
396          if args is None:
397              args = self._extra_args
398          if args is self._extra_args and name in self._extra_args:
399
400
401 [FILE:1175:files/configure]
402 #!/bin/sh
403 # This Source Code Form is subject to the terms of the Mozilla Public
404 # License, v. 2.0. If a copy of the MPL was not distributed with this
405 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
406 #
407 # Welcome to the new world of configure. We're working on moving to a
408 # python based configure. In the meanwhile, remains of the old autoconf
409 # based configure is in old-configure.in.
410 # If you need to add something, please come talk to the build system
411 # peers for now.
412 #
413 # Because adding a configure file in the tree is going to conflict with
414 # existing configure files in people's (and automation) work trees, and
415 # because some automation jobs are still running autoconf and configure
416 # "manually", this file is actually an m4 file that is processed by
417 # autoconf, but doesn't call any autoconf macros. The `divert` line
418 # below ensures the script that follows is output by autoconf.
419 : "divert(0)dnl"
420 #!/bin/sh
421
422 SRCDIR=$(dirname $0)
423 TOPSRCDIR="$SRCDIR"/../..
424 export OLD_CONFIGURE="$SRCDIR"/old-configure
425
426 set -- "$@" --enable-project=js
427
428 which python2.7 > /dev/null && exec python2.7 "$TOPSRCDIR/configure.py" "$@" || exec python "$TOPSRCDIR/configure.py" "$@"
429