1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
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]
12 SITES[main]= https://queue.taskcluster.net/v1/task/PNGBJ8KgQuK9tX78Hajrbg/runs/0/artifacts/public/build/
13 DISTFILE[1]= mozjs-52.6.0.tar.bz2:main
15 SPKGS[standard]= single
17 OPTIONS_AVAILABLE= none
18 OPTIONS_STANDARD= none
20 BUILD_DEPENDS= autoconf213:single:standard
22 BUILDRUN_DEPENDS= icu:single:standard
24 readline:single:standard
25 zlib:complete:standard
27 USES= gmake perl pkgconfig python:py27,build
29 DISTNAME= mozjs-52.6.0/js/src
32 CONFIGURE_ARGS= --disable-debug
33 --disable-debug-symbols
45 PLIST_SUB= MOZJS_MAJOR=52
49 touch ${WRKSRC}/configure
52 ${LN} -s libmozjs-52.so \
53 ${STAGEDIR}${PREFIX}/lib/libmozjs-52.6.so.1
54 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/js52
55 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmozjs-52.so
58 ${CP} /port/files/configure ${WRKSRC}
60 [FILE:126:descriptions/desc.single]
61 SpiderMonkey is Mozilla's JavaScript engine written in C and C++. It is
62 used in various Mozilla products, including Firefox.
66 1617680d54b79fc32c21d1179669b970cc15af10c331a54b87db7193efe44b2c 30439120 mozjs-52.6.0.tar.bz2
69 [FILE:2615:manifests/plist.single]
72 js%%MOZJS_MAJOR%%-config
73 include/mozjs-%%MOZJS_MAJOR%%/
78 include/mozjs-%%MOZJS_MAJOR%%/js/
80 CallNonGenericMethod.h
99 ProfilingFrameIterator.h
110 TrackedOptimizationInfo.h
113 UbiNodeBreadthFirst.h
115 UbiNodeDominatorTree.h
117 UbiNodeShortestPaths.h
123 include/mozjs-%%MOZJS_MAJOR%%/
137 include/mozjs-%%MOZJS_MAJOR%%/mozilla/
170 IntegerPrintfMacros.h
190 OperatorNewExtensions.h
212 StaticAnalysisFunctions.h
213 TaggedAnonymousMemory.h
223 UniquePtrExtensions.h
230 include/mozjs-%%MOZJS_MAJOR%%/
238 libmozjs-%%MOZJS_MAJOR%%.so
239 libmozjs-%%MOZJS_MAJOR%%.%%MOZJS_MINOR%%.so.1
240 lib/pkgconfig/mozjs-%%MOZJS_MAJOR%%.pc
243 [FILE:540:patches/patch-build_moz.configure_init.configure]
244 --- ../../build/moz.configure/init.configure.orig 2018-01-11 18:49:42 UTC
245 +++ ../../build/moz.configure/init.configure
246 @@ -344,8 +344,8 @@ def split_triplet(triplet):
247 if cpu.endswith('86') or (cpu.startswith('i') and '86' in cpu):
248 canonical_cpu = 'x86'
249 endianness = 'little'
250 - elif cpu in ('x86_64', 'ia64'):
251 - canonical_cpu = cpu
252 + elif cpu in ('x86_64', 'ia64', 'amd64'):
253 + canonical_cpu = 'x86_64'
254 endianness = 'little'
255 elif cpu in ('s390', 's390x'):
259 [FILE:552:patches/patch-config_rules.mk]
260 --- ../../config/rules.mk.orig 2018-01-11 18:49:42 UTC
261 +++ ../../config/rules.mk
262 @@ -418,7 +418,7 @@ endif # AIX
264 # Linux: add -Bsymbolic flag for components
266 -ifeq ($(OS_ARCH),Linux)
267 +#ifeq ($(OS_ARCH),Linux)
269 EXTRA_DSO_LDOPTS += -Wl,-Bsymbolic
271 @@ -426,7 +426,8 @@ ifdef LD_VERSION_SCRIPT
272 EXTRA_DSO_LDOPTS += -Wl,--version-script,$(LD_VERSION_SCRIPT)
273 EXTRA_DEPS += $(LD_VERSION_SCRIPT)
277 +EXTRA_DSO_LDOPTS += -Wl,-soname,lib$(JS_LIBRARY_NAME).so.0
280 ifeq ($(OS_TARGET),WINNT)
283 [FILE:908:patches/patch-js_src_old-configure.in]
284 --- old-configure.in.orig 2018-01-11 18:49:44 UTC
286 @@ -1623,16 +1623,21 @@ dnl ====================================
287 dnl = Enable jemalloc
288 dnl ========================================================
290 -case "${OS_TARGET}" in
291 -Android|WINNT|Darwin)
292 +dnl In stand-alone builds we always only want to link executables against mozglue.
293 +if test "$JS_STANDALONE"; then
297 - dnl On !Android !Windows !OSX, we only want to link executables against mozglue
298 - MOZ_GLUE_IN_PROGRAM=1
299 - AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
303 + case "${OS_TARGET}" in
304 + Android|WINNT|Darwin)
305 + MOZ_GLUE_IN_PROGRAM=
308 + dnl On !Android !Windows !OSX, we only want to link executables against mozglue
309 + MOZ_GLUE_IN_PROGRAM=1
310 + AC_DEFINE(MOZ_GLUE_IN_PROGRAM)
315 if test "$MOZ_MEMORY"; then
316 if test "x$MOZ_DEBUG" = "x1"; then
319 [FILE:475:patches/patch-mozglue_build_moz.build]
320 --- ../../mozglue/build/moz.build.orig 2018-01-11 18:49:46 UTC
321 +++ ../../mozglue/build/moz.build
324 # Build mozglue as a shared lib on Windows, OSX and Android.
325 # If this is ever changed, update MOZ_SHARED_MOZGLUE in browser/installer/Makefile.in
326 -if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android'):
327 +if CONFIG['OS_TARGET'] in ('WINNT', 'Darwin', 'Android') and not CONFIG['JS_STANDALONE']:
328 SharedLibrary('mozglue')
333 [FILE:379:patches/patch-python_mach_mach_mixin_process.py]
334 --- ../../python/mach/mach/mixin/process.py.orig 2018-04-01 13:37:29.893787000 +0200
335 +++ ../../python/mach/mach/mixin/process.py 2018-04-01 13:38:10.188973000 +0200
337 elif 'COMSPEC' in os.environ:
338 _current_shell = os.environ['COMSPEC']
340 - raise Exception('Could not detect environment shell!')
341 + _current_shell = "/bin/sh"
347 [FILE:1099:patches/patch-python_mozbuild_mozbuild_backend_recursivemake.py]
348 --- ../../python/mozbuild/mozbuild/backend/recursivemake.py.orig 2018-01-11 18:49:46 UTC
349 +++ ../../python/mozbuild/mozbuild/backend/recursivemake.py
350 @@ -1307,11 +1307,11 @@ class RecursiveMakeBackend(CommonBackend
351 raise Exception("Wildcards are only supported in the filename part of "
352 "srcdir-relative or absolute paths.")
354 - install_manifest.add_pattern_symlink(basepath, wild, path)
355 + install_manifest.add_pattern_copy(basepath, wild, path)
357 - install_manifest.add_pattern_symlink(f.srcdir, f, path)
358 + install_manifest.add_pattern_copy(f.srcdir, f, path)
360 - install_manifest.add_symlink(f.full_path, dest)
361 + install_manifest.add_copy(f.full_path, dest)
363 install_manifest.add_optional_exists(dest)
364 backend_file.write('%s_FILES += %s\n' % (
367 [FILE:572:patches/patch-python_mozbuild_mozbuild_configure_____init____.py]
368 --- ../../python/mozbuild/mozbuild/configure/__init__.py.orig 2018-01-11 18:49:46 UTC
369 +++ ../../python/mozbuild/mozbuild/configure/__init__.py
370 @@ -356,7 +356,7 @@ class ConfigureSandbox(dict):
371 # All options should have been removed (handled) by now.
372 for arg in self._helper:
373 without_value = arg.split('=', 1)[0]
374 - raise InvalidOptionError('Unknown option: %s' % without_value)
375 + print('Ignoring', without_value, ': Unknown option')
377 # Run the execution queue
378 for func, args in self._execution_queue:
381 [FILE:659:patches/patch-python_mozbuild_mozbuild_configure_options.py]
382 --- ../../python/mozbuild/mozbuild/configure/options.py.orig 2018-01-11 18:49:46 UTC
383 +++ ../../python/mozbuild/mozbuild/configure/options.py
384 @@ -402,7 +402,11 @@ class CommandLineHelper(object):
386 def add(self, arg, origin='command-line', args=None):
387 assert origin != 'default'
388 - prefix, name, values = Option.split_option(arg)
390 + prefix, name, values = Option.split_option(arg)
391 + except InvalidOptionError as e:
392 + print('Ignoring', arg, ':', e)
395 args = self._extra_args
396 if args is self._extra_args and name in self._extra_args:
399 [FILE:1175:files/configure]
401 # This Source Code Form is subject to the terms of the Mozilla Public
402 # License, v. 2.0. If a copy of the MPL was not distributed with this
403 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
405 # Welcome to the new world of configure. We're working on moving to a
406 # python based configure. In the meanwhile, remains of the old autoconf
407 # based configure is in old-configure.in.
408 # If you need to add something, please come talk to the build system
411 # Because adding a configure file in the tree is going to conflict with
412 # existing configure files in people's (and automation) work trees, and
413 # because some automation jobs are still running autoconf and configure
414 # "manually", this file is actually an m4 file that is processed by
415 # autoconf, but doesn't call any autoconf macros. The `divert` line
416 # below ensures the script that follows is output by autoconf.
421 TOPSRCDIR="$SRCDIR"/../..
422 export OLD_CONFIGURE="$SRCDIR"/old-configure
424 set -- "$@" --enable-project=js
426 which python2.7 > /dev/null && exec python2.7 "$TOPSRCDIR/configure.py" "$@" || exec python "$TOPSRCDIR/configure.py" "$@"