Ravenports generated: 11 May 2018 00:26
[ravenports.git] / bucket_8B / spidermonkey
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               spidermonkey
4 VERSION=                52.7.4
5 REVISION=               1
6 KEYWORDS=               lang
7 VARIANTS=               standard
8 SDESC[standard]=        Standalone JS interpreter from Mozilla 52-esr
9 HOMEPAGE=               https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey
10 CONTACT=                Michael_Reim[kraileth@elderlinux.org]
11
12 DOWNLOAD_GROUPS=        main
13 SITES[main]=            https://queue.taskcluster.net/v1/task/B2xAyI3fRB6xm-9zjFFugA/runs/0/artifacts/public/build/
14 DISTFILE[1]=            mozjs-52.7.4.tar.bz2:main
15 DF_INDEX=               1
16 SPKGS[standard]=        single
17
18 OPTIONS_AVAILABLE=      none
19 OPTIONS_STANDARD=       none
20
21 BUILD_DEPENDS=          autoconf213:single:standard
22                         zip:single:standard
23 BUILDRUN_DEPENDS=       icu:single:standard
24                         nspr:single:standard
25
26 USES=                   gmake perl pkgconfig python:py27,build zlib readline
27
28 DISTNAME=               mozjs-52.7.4/js/src
29
30 MUST_CONFIGURE=         gnu
31 CONFIGURE_ARGS=         --disable-debug
32                         --disable-debug-symbols
33                         --enable-readline
34                         --enable-release
35                         --enable-shared-js
36                         --enable-tests
37                         --with-intl-api
38                         --with-pthreads
39                         --with-system-nspr
40                         --with-system-icu
41                         --with-system-zlib
42
43 PLIST_SUB=              MOZJS_MAJOR=52
44                         MOZJS_MINOR=7
45
46 VAR_OPSYS[dragonfly]=   CONFIGURE_ARGS=--disable-jemalloc
47
48 post-patch:
49         touch ${WRKSRC}/configure
50
51 post-install:
52         ${LN} -s libmozjs-52.so \
53                 ${STAGEDIR}${PREFIX}/lib/libmozjs-52.7.so.1
54         ${LN} -s libmozjs-52.so \
55                 ${STAGEDIR}${PREFIX}/lib/libmozjs-52.so.0
56         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/js52
57         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmozjs-52.so
58
59 post-extract:
60         ${CP} /port/files/configure ${WRKSRC}
61
62 [FILE:126:descriptions/desc.single]
63 SpiderMonkey is Mozilla's JavaScript engine written in C and C++. It is 
64 used in various Mozilla products, including Firefox.
65
66
67 [FILE:99:distinfo]
68 7909da399c9345c8285d30ac33592dfb2fb31de304df37d2795804ee44c80dfc     30416764 mozjs-52.7.4.tar.bz2
69
70
71 [FILE:2631:manifests/plist.single]
72 %%ONLY-FREEBSD%%include/mozjs-%%MOZJS_MAJOR%%/
73  jemalloc_types.h
74  mozmemory.h
75  mozmemory_wrap.h
76  mozzconf.h
77  zconf.h
78  zlib.h
79 bin/
80  js%%MOZJS_MAJOR%%
81  js%%MOZJS_MAJOR%%-config
82 include/mozjs-%%MOZJS_MAJOR%%/
83  fdlibm.h
84  js-config.h
85  js.msg
86  jsalloc.h
87  jsapi.h
88  jsbytecode.h
89  jsclist.h
90  jscpucfg.h
91  jsfriendapi.h
92  jsperf.h
93  jsprf.h
94  jsprototypes.h
95  jspubtd.h
96  jstypes.h
97  jsversion.h
98  jswrapper.h
99 include/mozjs-%%MOZJS_MAJOR%%/js/
100  CallArgs.h
101  CallNonGenericMethod.h
102  CharacterEncoding.h
103  Class.h
104  Conversions.h
105  Date.h
106  Debug.h
107  GCAPI.h
108  GCAnnotations.h
109  GCHashTable.h
110  GCPolicyAPI.h
111  GCVariant.h
112  GCVector.h
113  HashTable.h
114  HeapAPI.h
115  Id.h
116  Initialization.h
117  LegacyIntTypes.h
118  MemoryMetrics.h
119  Principals.h
120  ProfilingFrameIterator.h
121  ProfilingStack.h
122  Proxy.h
123  Realm.h
124  RequiredDefines.h
125  RootingAPI.h
126  SliceBudget.h
127  StructuredClone.h
128  SweepingAPI.h
129  TraceKind.h
130  TracingAPI.h
131  TrackedOptimizationInfo.h
132  TypeDecls.h
133  UbiNode.h
134  UbiNodeBreadthFirst.h
135  UbiNodeCensus.h
136  UbiNodeDominatorTree.h
137  UbiNodePostOrder.h
138  UbiNodeShortestPaths.h
139  UniquePtr.h
140  Utility.h
141  Value.h
142  Vector.h
143  WeakMapPtr.h
144 include/mozjs-%%MOZJS_MAJOR%%/mozilla/
145  Alignment.h
146  AllocPolicy.h
147  AlreadyAddRefed.h
148  Array.h
149  ArrayUtils.h
150  Assertions.h
151  Atomics.h
152  Attributes.h
153  BinarySearch.h
154  BloomFilter.h
155  BufferList.h
156  Casting.h
157  ChaosMode.h
158  Char16.h
159  CheckedInt.h
160  Compiler.h
161  Compression.h
162  DebugOnly.h
163  Decimal.h
164  EndianUtils.h
165  EnumSet.h
166  EnumTypeTraits.h
167  EnumeratedArray.h
168  EnumeratedRange.h
169  FastBernoulliTrial.h
170  FloatingPoint.h
171  Function.h
172  GuardObjects.h
173  HashFunctions.h
174  IndexSequence.h
175  IntegerPrintfMacros.h
176  IntegerRange.h
177  IntegerTypeTraits.h
178  JSONWriter.h
179  Likely.h
180  LinkedList.h
181  MacroArgs.h
182  MacroForEach.h
183  MathAlgorithms.h
184  Maybe.h
185  MaybeOneOf.h
186  MemoryChecking.h
187  MemoryReporting.h
188  Move.h
189  NotNull.h
190  NullPtr.h
191  Opaque.h
192  OperatorNewExtensions.h
193  Pair.h
194  PodOperations.h
195  Poison.h
196  Range.h
197  RangedArray.h
198  RangedPtr.h
199  ReentrancyGuard.h
200  RefCountType.h
201  RefCounted.h
202  RefPtr.h
203  ReverseIterator.h
204  RollingMean.h
205  SHA1.h
206  Saturate.h
207  ScopeExit.h
208  Scoped.h
209  SegmentedVector.h
210  SizePrintfMacros.h
211  SplayTree.h
212  Sprintf.h
213  StackWalk.h
214  StaticAnalysisFunctions.h
215  TaggedAnonymousMemory.h
216  TemplateLib.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