From e9ef239373e2d3d6b657efaf2454e80de22e835a Mon Sep 17 00:00:00 2001 From: Ian Stakenvicius Date: Fri, 12 Oct 2012 15:58:41 -0400 Subject: Bump to EAPI5 and fix bugs 437190, 437518 --- dev-lang/spidermonkey/Manifest | 31 +++-- .../files/spidermonkey-1.5-build.patch | 138 +++++++++++++++++++++ .../files/spidermonkey-1.6-header.patch | 13 ++ .../files/spidermonkey-1.7.0-ldflags.patch | 42 +++++++ .../files/spidermonkey-1.7.0-threadsafe.diff | 18 +++ .../files/spidermonkey-1.9.2.13-as-needed.patch | 22 ++++ dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild | 52 ++++++++ .../spidermonkey/spidermonkey-1.8.2.15-r2.ebuild | 80 ++++++++++++ dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild | 119 ++++++++++++++++++ dev-lang/spidermonkey/spidermonkey-1.8.7-r1.ebuild | 134 ++++++++++++++++++++ 10 files changed, 639 insertions(+), 10 deletions(-) create mode 100644 dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch create mode 100644 dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch create mode 100644 dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch create mode 100644 dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff create mode 100644 dev-lang/spidermonkey/files/spidermonkey-1.9.2.13-as-needed.patch create mode 100644 dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild create mode 100644 dev-lang/spidermonkey/spidermonkey-1.8.2.15-r2.ebuild create mode 100644 dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild create mode 100644 dev-lang/spidermonkey/spidermonkey-1.8.7-r1.ebuild (limited to 'dev-lang') diff --git a/dev-lang/spidermonkey/Manifest b/dev-lang/spidermonkey/Manifest index 0e4b8107..71c2d47f 100644 --- a/dev-lang/spidermonkey/Manifest +++ b/dev-lang/spidermonkey/Manifest @@ -1,10 +1,21 @@ -AUX spidermonkey-1.8.5-arm_resprect_cflags-1.patch 2227 RMD160 d4c4c41c9cda62f1276e617915a2be744493754e SHA1 790060f9081c5b861d227d2b14b2281c984968d9 SHA256 1e726aa83d26d20454bbfdfe2a5529ac5b07076dd13a9d6faac6341193c85f37 -AUX spidermonkey-1.8.5-fix-install-symlinks.patch 484 RMD160 0a6e799e6b47c0011ba02c877e0d190ae3830c62 SHA1 b0f776c06e956024fb0f0553f8056bbce0830273 SHA256 4c66d490b6ff22086252ad871242d6d87de2e3fec59b91099864c7881cffd823 -AUX spidermonkey-1.8.5-fix-ppc64.patch 1669 RMD160 b3f3037cca9cc56c5f5a3c4e7a7c34a8f5b05efd SHA1 74245c08ef7a289e545a11afaeea60406d3bf717 SHA256 ffae38a7e5db0895e10be924e1bd084e57640c7a184cd8f1b1a90e9533202470 -AUX spidermonkey-1.8.7-filter_desc.patch 922 RMD160 2278dac6ff00e1c3650ed8ade491f142aa49f3d0 SHA1 462da04f7784530e02880bbc6ee5cabbe7ab0603 SHA256 7a3832a0a47f90b89a240b44ac580fff8740344c1d3eee0624973cb251043c46 -AUX spidermonkey-1.8.7-x32.patch 753 RMD160 91337f85781fb37057b3b7194cccde8378fa6a4d SHA1 310cccac981c39d06198dd449ac3126484525e56 SHA256 0b223162cf7067d1dbbb950708265ccf20637fe4906564080d9c9c38b85e826d -DIST js185-1.0.0.tar.gz 6164605 RMD160 23e6ddc81d5b63e015aecc1a104b2d3d3ced5005 SHA1 52a01449c48d7a117b35f213d3e4263578d846d6 SHA256 5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687 -DIST js187-1.0.0.tar.gz 7106870 RMD160 34d7fccefb85eb74093aad63c96190cb903021ea SHA1 229d05f271933f66536c20da2b1fb8060989cbc4 SHA256 ce80a9eabdaf22d2a1c4830ea36120e6af207bb336bea8f6d34cba32f59fe2b4 -DIST spidermonkey-1.8.7-patches-0.1.tar.xz 4796 RMD160 fc5bf0d85014a7d8d5c4f1f55866a44b8d5cd2bd SHA1 f54f7a761fef1bee23664d3736e3aaf38521a7e8 SHA256 ddc0431ed9a96b67c27787fa824f4456693b9361dbb41366f8196d1a3425a353 -EBUILD spidermonkey-1.8.5-r1.ebuild 3123 RMD160 42c22e43d78fee436660c385e4910e70f1b53c89 SHA1 150f46149e44631915fd75057acb0b8f5d0dbd72 SHA256 40243bbaf6a0300f008192d8faaf935c7d857c89ab2455177a2560c15cb47ba5 -EBUILD spidermonkey-1.8.7.ebuild 3426 RMD160 eefe7c1eb7ca8576ed63465a9c61e7e00dff97fa SHA1 846b17b3b415c527601c9b2d2953d2ea7f8c6c3e SHA256 0b0f0c9c2274050d572f37abe88e2e61f68ae50295c4057b80d60de845c34dd9 +AUX spidermonkey-1.5-build.patch 3457 SHA256 04a2b3b1b85825f463c6eb703d32e66747e2a8cca81b0026b958862eb1248fdb SHA512 d4ebb63c9ce2a2e84a0a2b32abb8f4316d53bd71a2c6de37f1a48b26514d583b4c573302dcb15f39b4f57878d01dfc4ff9f9d70e9d1abd54f4ce535124c1147e WHIRLPOOL d35da32872cb68f2bf5b86c20691c7212bdff843a9bfcd8fb385e62c7bc55b9248a00edd3654ac2c1e50f57e413c9dd4c4cfcb57b5a59c1cef343f6c202eb6f9 +AUX spidermonkey-1.6-header.patch 270 SHA256 e81acd7ba025214b2ecfa5918a1652e4590eaca39307c4e8d9f5d949d315373e SHA512 f52861ad88b6624fc7e2cd7b9174f53cf0bebf339704932f36ca1d5bd6b133f6e28333fa5d10841c72ccfaccf0f7daa63a1385e2ff6ab8d0192bf70bd437479a WHIRLPOOL d076e64a52adfb9ff55aa7c6191c4a1c29c6917661a15a5cfcc0717960e63403b5557f9e28263cc19c20f3ee4e97c88f87b40b6d786ca3705dd4b2893a0f9c7d +AUX spidermonkey-1.7.0-ldflags.patch 1076 SHA256 7dcc26496a6413652ff32ce1b1eb04c7ef526658d41a243f1ce0e44598cd809b SHA512 649dccce8206cf99e09715a0e8e7fc0db3bdff4269ab82898476d2e70fda73c420f80f915eadabf17a8bcee529e692bd195dd6df3ac58020e8dd97a91d19a847 WHIRLPOOL 270ea3c19981a597cc8cf9984f5ac358e91fb6ab3fe0ff753cbd933868177e5629b088ae7588b9b630f37ac1cc1381f6e28591e3b47e03bec39627ef332cdcb4 +AUX spidermonkey-1.7.0-threadsafe.diff 513 SHA256 3e41354e093efce3fe897814bc490aa45e17c9d6d0ca6ae7f9f1550b85be89e9 SHA512 81a6c306f4c2546921a12864ee4320b44ce4313e4972932c1929b3ccac03954f0aa4260911b4d9cffcb135cce5974c91456577a80162ed2052cdff7ebd327b9f WHIRLPOOL f21510a69e5718bef52fd0a4f139ff95cf91ae3626172c473a859c5fc2e7dda1df7e67f92190c4c6c2e74e32ac8a36163ca1164aa2f922ec7a6662b89cfe6e2f +AUX spidermonkey-1.8.5-arm_resprect_cflags-1.patch 2227 SHA256 1e726aa83d26d20454bbfdfe2a5529ac5b07076dd13a9d6faac6341193c85f37 SHA512 374278b503bc04aaf9b5db08d28529f5943960b74f4f0b55c46b3bf820f3bd55cc52f46aaf502649745d2455e2a27c867fdc93e46662f4ee1eba91d2b6737a49 WHIRLPOOL f8f2acfae508157ad820f7d8a0f3190cfaadcf3ae76df7d6bbf7aaad02d3f908a2bf60e603f2c591310e25de25e3c9f3543619d68e179d4c937ed81f0acd4c13 +AUX spidermonkey-1.8.5-fix-install-symlinks.patch 484 SHA256 4c66d490b6ff22086252ad871242d6d87de2e3fec59b91099864c7881cffd823 SHA512 738f59260900e2dee42a3a8347c5afa09cc99e0e7f267c7af80b29a115818c61dce6912d5ff98c1bbcaea816c4d8579383eb7f6a848ba5d4b9275ec6baa2f01d WHIRLPOOL 210390d31e93c7a96fb61951b93221dbd34a1572476dbbf91e0ae3bcfd06d10194205411c49c47ea7d8fa6f898d0c96366c5b6fd3927d12d787524b674d85b81 +AUX spidermonkey-1.8.5-fix-ppc64.patch 1669 SHA256 ffae38a7e5db0895e10be924e1bd084e57640c7a184cd8f1b1a90e9533202470 SHA512 0352665ae138e15aabc8b40561ac6d5328b7a1c497f9591ebe57ffacb05a0ba52c677b8174829c5328cb79ea271b519287bfb99bd418efefc3409d18a198b7d9 WHIRLPOOL 699b3d0a75d660fba0a6095b19db84504238b2c3f9f0bcddf1d6628c8a51a70301c2a3eb54712c2e7719ca5bd4184562d64fac22760e870e453ea2feb5456870 +AUX spidermonkey-1.8.7-filter_desc.patch 922 SHA256 7a3832a0a47f90b89a240b44ac580fff8740344c1d3eee0624973cb251043c46 SHA512 f4b2f3b8b48b0418ab2572dcedc927c4e415979b2dff0f89614cab8b6c6b33e8d0ecf0d298ecdd5c125e936db98028261a59b6f4917384e060999e07ff7b92be WHIRLPOOL 186c2f2ba04170005a5af7cce773ef92925015a1e4541f40d2d44641b9dda5048a2b3d8953755860e866893043ae666360c8a7b594eda77858851c937d5ca8c0 +AUX spidermonkey-1.8.7-x32.patch 753 SHA256 0b223162cf7067d1dbbb950708265ccf20637fe4906564080d9c9c38b85e826d SHA512 ae9c0241fd1cc02b5f21865adb1efb750246850dcf93ee1b81c5faf19c5d4d5b0ab6e853527899c438d2139601e8a177f7ee6c9a3700d2816df32f5e09d273e8 WHIRLPOOL 8b43164a8a7cc4d82092e81d4a2d0d21a8614dfe7964f3fbb49d0f70e25178ba0197bd525e9f08cb1c621d991dd4aefc97be15901d3f482fce180e8d90bf8706 +AUX spidermonkey-1.9.2.13-as-needed.patch 623 SHA256 5163be062d23265cc19e9b1acb441ec42ceb2fd678b03076880869b7b9f92f8f SHA512 0acc2dc178396302518a2ac868ff1ab5710615bebe0c9ece31dba59037a92c741c5f02ba24cb76fe239e1b39946ff3362e5414e63f5ff64e48b64012b48a9779 WHIRLPOOL 75bc285dc9bb437a4ae4350eb755bbb2d0418a4f854ce4daeda4ca805ca31e16dabda0e35ac2a05dc0f5fcf6dfe1929547252a63553664921fd24a6ca76a30fa +DIST firefox-3.6.15.source.tar.bz2 51552828 SHA256 405aa411a8ddb456017564522cbb486850e34fe14485b1c31fa93fc5c750870f SHA512 82bf0a6c6cb30fc0b18b067ac3d9cb7e48a0fd0126edd851e628d49e429aea33500a5a5eba87bce922e51b1b7410ccccfe4f8b7ce5573bdbd718c76da7acb1da WHIRLPOOL b788d7ba2cfcaec4f317e615878401a7a1fb985aaa43829831c17b699812e59adb7874247114e0143da63198118cab059796fc5d5fd08d72ccc54b4fef279f85 +DIST js-1.7.0.tar.gz 1165607 SHA256 44363f0f3895800ee6010763eae90c0d15ed28e07d783bc7b3c607ce98d8668b SHA512 9d9fbd9c1dae969ca19ddb0f977ac56f3e0479ec393b859de252fcdd8b7fc325e80399073540884ed365ce56a3219be34c0db9300d5e50f32969660c90527e51 WHIRLPOOL 8044b306b3a1f0abed5ac8a6bf4f9ed70e1ebc6f83f44934a6306d9ed68cd73124f82e40430d764f158377031f5ee986595e58fdb52259ab6a3a8674eaf4eed1 +DIST js185-1.0.0.tar.gz 6164605 SHA256 5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687 SHA512 2af7122a7c7007fd7b6668776fe1222515a810b3e43bbf0f76b8f94e1ef406ffd3fb5ccec393021b00274c05b38a77235bc8d6886994c56762fcaf0aa7cf6718 WHIRLPOOL 58b372713275874d3ae3c6b58c12c56bf8d17d024d591e321538bcdd8e615332e41655954368ce86b90e970209e3fd650c39d931000880f5ec22cb044b5d7a4e +DIST js187-1.0.0.tar.gz 7106870 SHA256 ce80a9eabdaf22d2a1c4830ea36120e6af207bb336bea8f6d34cba32f59fe2b4 SHA512 7df55daac1eac0a7a7b31df044f7d5cc40a1f5079907b661f7c8489614b0ddff35e4f7cd13214bfc4baf9bdb37d392e4118f63ab589a051978d6ceef63d1e9f2 WHIRLPOOL d0f2ea8add0c7c1ac34ff8a6f887e931768091696dda037e7778ecd7eb02889b455747cfaa9a362844983eb2bdda6bddab46bf542cecf81f91ec5165efc0b9a3 +DIST spidermonkey-1.8.7-patches-0.1.tar.xz 4796 SHA256 ddc0431ed9a96b67c27787fa824f4456693b9361dbb41366f8196d1a3425a353 SHA512 bd1976b12940390e7d5db6078ca6339006428874788688e4ea4f6bd86afd341c3edd356bac801883637f46085c6d971d4f79e44fa9f6e44b3b715186355be175 WHIRLPOOL 5614bcb99d7101751e6f5be24b20e8a6acd5a682640025830f0c4a4fb74e724e5d71eb56c3e09d0ced4bbfa6c6c93daf42a7bc326c3cf0b07bee777901f25039 +EBUILD spidermonkey-1.7.0-r3.ebuild 1572 SHA256 5fa27ee739b872875263cc820fbd62965602fc382b5b9910bf261806b888b659 SHA512 a416f95f9908f54e1c677121bfb813c4b796e1a08b9b8eed2b67bb4302ab80484ee6128f528c5cc28ded6c64676840d76e8cdaea4909d08ff23bea216ee3594c WHIRLPOOL 7d482652339f3c4d16282fa9b65cd619a90510b46ece74ff3598e2f0fb1dc396f40d10e76922ec9e8d4a8d1da4101c43690fb9086d5c9c4da6fdb376f3529c22 +EBUILD spidermonkey-1.8.2.15-r2.ebuild 1974 SHA256 0c5415bdc7f102f6901c3f72a1456cea267e8042b91b580233a10b95e4a4f873 SHA512 ea45f184d20961623706f69a214d436aced33d104e8ff0f9e728c4a5f64d492cff3fff03a4f934e2cbb799a42dbd38551da6bfa05417543515dfad30383fcb05 WHIRLPOOL 889f37623b078d68ae11f7c0a5043c00a0f887c33dc66c9625834129d520e64939fe582756d7ba4a9d9477d45905da5fde3929cc27dac3837513b00ec628f684 +EBUILD spidermonkey-1.8.5-r1.ebuild 3123 SHA256 40243bbaf6a0300f008192d8faaf935c7d857c89ab2455177a2560c15cb47ba5 SHA512 621e3dd36e8c30c9e1ba7be8f350801f9154154d9bdf535ccb3e74943429b55707e9990f99929ffa97ebdeca800f1241b0357e024c67624b0f5e1ed000aabf99 WHIRLPOOL 8fc4f02b324c65d2f045222cf903a0d27cea272569a752c68651ed21df2d23c14bae97b975ce407be3f3e812841bb4bc8f24849f07aa2b23e609ec4fc38c1686 +EBUILD spidermonkey-1.8.5-r2.ebuild 3369 SHA256 5b9d75e9ffda5ba56b03ecab9db6607fefcceecfcebe59dcaf1b35a0ae7d0bc2 SHA512 00584e4fb20161b62b62559e922df935e3062f507e48032e321c768d2a4abd5f47d26434c5715bbb6a83b944af95f63b1852bd9db7a99ab1e837f800478054b4 WHIRLPOOL e41b2ee96db89c4c8e75762ada184e47680c4f0440dda6ebe2d8ad7686e1bb327d5e7c2ffda81e637d6cfe47781a0cf7e777221cb4bd118397579e620334f8f1 +EBUILD spidermonkey-1.8.7-r1.ebuild 3708 SHA256 34ec51cca1557a5582bed4de9c41301721c351638fe575e498e82e60b75f8eca SHA512 f051c17a8060943b1c403a4067485ceee133156b2fe4da97c9e02009de4d1765827b2b9c0f932113539c53c8f923a1ee68a454bc6c07ff558965a834c326c804 WHIRLPOOL c22e368bc2288f855de9624d27a0e1410e4b9cdc5b19a3798d00ef69656c1b1374a3306eeb595e48c9050b8bd54f271231d457e579e31effa8333e1f0e358868 +EBUILD spidermonkey-1.8.7.ebuild 3426 SHA256 0b0f0c9c2274050d572f37abe88e2e61f68ae50295c4057b80d60de845c34dd9 SHA512 916fc89a9a60d44603ea677f57391dd9fab6ed52b38f1822621f37573a90d802912764e3924de91ef1b3ab3cefd077f07503bd933a48b8c532fb0dfb92e15bcc WHIRLPOOL 2bf79c38bb8bdc98f4e80d81ca1e5b733712b6b36eaaeb766cdd89ced157ee10ae41d524e910d47e03931efb8348faf63dca761db984330c927bd78214d3d37e diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch b/dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch new file mode 100644 index 00000000..a5c4b47d --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.5-build.patch @@ -0,0 +1,138 @@ +--- js/src/Makefile.ref ++++ js/src/Makefile.ref +@@ -127,7 +127,7 @@ endif + ifdef JS_READLINE + # For those platforms with the readline library installed. + DEFINES += -DEDITLINE +-PROG_LIBS += -lreadline -ltermcap ++PROG_LIBS += -lreadline + else + ifdef JS_EDITLINE + # Use the editline library, built locally. +@@ -370,3 +370,16 @@ TARFILES = files `cat files` + SUFFIXES: .i + %.i: %.c + $(CC) -C -E $(CFLAGS) $< > $*.i ++ ++DESTDIR := ++PREFIX := /usr ++BINDIR := $(PREFIX)/bin ++MY_LIBDIR := $(PREFIX)/$(LIBDIR) ++INCLUDEDIR := $(PREFIX)/include/js ++INSTALL := install -g 0 -o root ++install: ++ $(INSTALL) -m 755 -d $(DESTDIR)$(INCLUDEDIR) $(DESTDIR)$(MY_LIBDIR) $(DESTDIR)$(BINDIR) ++ $(INSTALL) -m 755 $(SHARED_LIBRARY) $(DESTDIR)$(MY_LIBDIR) ++ $(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(MY_LIBDIR) ++ $(INSTALL) -m 755 $(OBJDIR)/js $(OBJDIR)/jscpucfg $(DESTDIR)$(BINDIR) ++ $(INSTALL) -m 644 $(HFILES) $(DESTDIR)$(INCLUDEDIR) +--- js/src/config/Linux_All.mk ++++ js/src/config/Linux_All.mk +@@ -41,37 +41,15 @@ + # Config for all versions of Linux + # + +-CC = gcc +-CCC = g++ + CFLAGS += -Wall -Wno-format + OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R + + RANLIB = echo +-MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) ++MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) -soname $(notdir $@) + + #.c.o: + # $(CC) -c -MD $*.d $(CFLAGS) $< + +-CPU_ARCH = $(shell uname -m) +-# don't filter in x86-64 architecture +-ifneq (x86_64,$(CPU_ARCH)) +-ifeq (86,$(findstring 86,$(CPU_ARCH))) +-CPU_ARCH = x86 +-OS_CFLAGS+= -DX86_LINUX +- +-ifeq (gcc, $(CC)) +-# if using gcc on x86, check version for opt bug +-# (http://bugzilla.mozilla.org/show_bug.cgi?id=24892) +-GCC_VERSION := $(shell gcc -v 2>&1 | grep version | awk '{ print $$3 }') +-GCC_LIST:=$(sort 2.91.66 $(GCC_VERSION) ) +- +-ifeq (2.91.66, $(firstword $(GCC_LIST))) +-CFLAGS+= -DGCC_OPT_BUG +-endif +-endif +-endif +-endif +- + GFX_ARCH = x + + OS_LIBS = -lm -lc +@@ -88,16 +66,6 @@ + endif + + # Use the editline library to provide line-editing support. +-JS_EDITLINE = 1 ++JS_READLINE = 1 + +-ifeq ($(CPU_ARCH),x86_64) +-# Use VA_COPY() standard macro on x86-64 +-# FIXME: better use it everywhere + OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy +-endif +- +-ifeq ($(CPU_ARCH),x86_64) +-# We need PIC code for shared libraries +-# FIXME: better patch rules.mk & fdlibm/Makefile* +-OS_CFLAGS += -DPIC -fPIC +-endif +--- js/src/rules.mk ++++ js/src/rules.mk +@@ -82,6 +82,10 @@ $(OBJDIR)/%.o: %.c + @$(MAKE_OBJDIR) + $(CC) -o $@ -c $(CFLAGS) $*.c + ++$(OBJDIR)/%.lo: %.c ++ @$(MAKE_OBJDIR) ++ $(CC) -o $@ -c $(CFLAGS) $*.c -fPIC ++ + $(OBJDIR)/%.o: %.s + @$(MAKE_OBJDIR) + $(AS) -o $@ $(ASFLAGS) $*.s +@@ -111,11 +115,12 @@ $(SHARED_LIBRARY): $(LIB_OBJS) + /implib:"$(OBJDIR)/$(@F:.dll=.lib)" $^ + else + $(LIBRARY): $(LIB_OBJS) +- $(AR) rv $@ $? ++ $(AR) cr $@ $? + $(RANLIB) $@ + +-$(SHARED_LIBRARY): $(LIB_OBJS) +- $(MKSHLIB) -o $@ $(LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS) ++SHARED_LIB_OBJS := $(LIB_OBJS:.o=.lo) ++$(SHARED_LIBRARY): $(SHARED_LIB_OBJS) ++ $(MKSHLIB) -o $@ $(SHARED_LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS) + endif + endif + +--- js/src/fdlibm/Makefile.ref ++++ js/src/fdlibm/Makefile.ref +@@ -151,7 +151,7 @@ + + $(OBJDIR)/%.o: %.c + @$(MAKE_OBJDIR) +- $(CC) -o $@ -c $(CFLAGS) $*.c ++ $(CC) -o $@ -c $(CFLAGS) $*.c -fPIC + + $(OBJDIR)/%.o: %.s + @$(MAKE_OBJDIR) +--- js/src/config.mk ++++ js/src/config.mk +@@ -112,6 +112,8 @@ + CP = cp + endif + ++BUILD_OPT := 1 ++ + ifdef BUILD_OPT + OPTIMIZER = -O + DEFINES += -UDEBUG -DNDEBUG -UDEBUG_$(shell whoami) diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch b/dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch new file mode 100644 index 00000000..df4cf7d5 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.6-header.patch @@ -0,0 +1,13 @@ +Index: src/Makefile.ref +=================================================================== +--- src.orig/Makefile.ref ++++ src/Makefile.ref +@@ -185,6 +185,8 @@ JS_HFILES = \ + jsstr.h \ + jsxdrapi.h \ + jsxml.h \ ++ jsutil.h \ ++ jsprf.h \ + $(NULL) + + API_HFILES = \ diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch b/dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch new file mode 100644 index 00000000..4ddc3461 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.7.0-ldflags.patch @@ -0,0 +1,42 @@ +Respect LDFLAGS + +http://bugs.gentoo.org/show_bug.cgi?id=331129 + +--- js/src/Makefile.ref ++++ js/src/Makefile.ref +@@ -87,7 +87,7 @@ + LDFLAGS = $(XLDFLAGS) + + ifndef NO_LIBM +-LDFLAGS += -lm ++OTHER_LIBS += -lm + endif + + # Prevent floating point errors caused by VC++ optimizations +@@ -325,7 +325,7 @@ + $(CC) -o $@ -c $(CFLAGS) $< + + $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX) +- $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^ ++ $(CC) $(HOST_LDFLAGS) -o $@ $(CFLAGS) $(OTHER_LIBS) $^ + + endif + +@@ -338,7 +338,7 @@ + link.exe -out:"$@" $(EXE_LINK_FLAGS) $^ + else + $(PROGRAM): $(PROG_OBJS) $(LIBRARY) +- $(CC) -o $@ $(CFLAGS) $(PROG_OBJS) $(LIBRARY) $(LDFLAGS) $(OTHER_LIBS) \ ++ $(CC) $(HOST_LDFLAGS) -o $@ $(CFLAGS) $(PROG_OBJS) $(LIBRARY) $(OTHER_LIBS) \ + $(PROG_LIBS) + endif + +@@ -355,7 +355,7 @@ + $(OBJDIR)/jscpucfg > $@ + + $(OBJDIR)/jscpucfg: $(OBJDIR)/jscpucfg.o +- $(CC) -o $@ $(OBJDIR)/jscpucfg.o ++ $(CC) $(HOST_LDFLAGS) -o $@ $(OBJDIR)/jscpucfg.o + + # Add to TARGETS for clobber rule + TARGETS += $(OBJDIR)/jsautocfg.h $(OBJDIR)/jscpucfg \ diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff b/dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff new file mode 100644 index 00000000..8728811f --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.7.0-threadsafe.diff @@ -0,0 +1,18 @@ +Index: src/Makefile.ref +=================================================================== +--- src.orig/Makefile.ref ++++ src/Makefile.ref +@@ -63,11 +63,11 @@ INCLUDES += -I$(OBJDIR) + + ifdef JS_THREADSAFE + DEFINES += -DJS_THREADSAFE +-INCLUDES += -I$(DIST)/include/nspr ++INCLUDES += -I/usr/include/nspr + ifdef USE_MSVC + OTHER_LIBS += $(DIST)/lib/libnspr$(NSPR_LIBSUFFIX).lib + else +-OTHER_LIBS += -L$(DIST)/lib -lnspr$(NSPR_LIBSUFFIX) ++OTHER_LIBS += -L/usr/$(LIBDIR)/nspr -lnspr$(NSPR_LIBSUFFIX) + endif + endif + diff --git a/dev-lang/spidermonkey/files/spidermonkey-1.9.2.13-as-needed.patch b/dev-lang/spidermonkey/files/spidermonkey-1.9.2.13-as-needed.patch new file mode 100644 index 00000000..847bf792 --- /dev/null +++ b/dev-lang/spidermonkey/files/spidermonkey-1.9.2.13-as-needed.patch @@ -0,0 +1,22 @@ +diff --git a/js/src/jsapi-tests/Makefile.in b/js/src/jsapi-tests/Makefile.in +--- a/js/src/jsapi-tests/Makefile.in ++++ b/js/src/jsapi-tests/Makefile.in +@@ -55,17 +55,17 @@ CPPSRCS = \ + testSameValue.cpp \ + testDebugger.cpp \ + testDefineGetterSetterNonEnumerable.cpp \ + testExtendedEq.cpp \ + $(NULL) + + DEFINES += -DEXPORT_JS_API + +-LIBS = $(NSPR_LIBS) $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) ++LIBS = $(DEPTH)/$(LIB_PREFIX)js_static.$(LIB_SUFFIX) $(NSPR_LIBS) + + LOCAL_INCLUDES += -I$(topsrcdir) -I.. + + ifdef _MSC_VER + ifdef WINCE + WIN32_EXE_LDFLAGS += -ENTRY:mainACRTStartup + endif + endif diff --git a/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild b/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild new file mode 100644 index 00000000..170963c4 --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-1.7.0-r3.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/spidermonkey/spidermonkey-1.7.0-r2.ebuild,v 1.2 2011/03/22 15:51:21 jer Exp $ + +EAPI="5" + +inherit eutils toolchain-funcs multilib flag-o-matic + +MY_P="js-${PV}" +DESCRIPTION="Stand-alone JavaScript C library" +HOMEPAGE="http://www.mozilla.org/js/spidermonkey/" +SRC_URI="ftp://ftp.mozilla.org/pub/mozilla.org/js/${MY_P}.tar.gz" + +LICENSE="NPL-1.1" +SLOT="0/js" +KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="threadsafe unicode" + +S="${WORKDIR}/js/src" + +RDEPEND="threadsafe? ( dev-libs/nspr )" +DEPEND="${RDEPEND}" + +src_prepare() { + epatch "${FILESDIR}/${PN}-1.5-build.patch" + epatch "${FILESDIR}/${PN}-1.6-header.patch" + epatch "${FILESDIR}/${P}-threadsafe.diff" \ + "${FILESDIR}"/${P}-ldflags.patch + + # don't force owner for Prefix + sed -i -e '/^INSTALL :=/s/-g 0 -o root//' Makefile.ref || die + + if [[ ${CHOST} == *-freebsd* ]]; then + # Don't try to be smart, this does not work in cross-compile anyway + ln -s "${S}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" + fi +} + +src_compile() { + use unicode && append-flags "-DJS_C_STRINGS_ARE_UTF8" + tc-export CC LD AR RANLIB + local threadsafe="" + use threadsafe && threadsafe="JS_THREADSAFE=1" + emake -j1 -f Makefile.ref LIBDIR="$(get_libdir)" ${threadsafe} \ + XLDFLAGS="$(raw-ldflags)" HOST_LDFLAGS="${LDFLAGS}" +} + +src_install() { + emake -f Makefile.ref install DESTDIR="${ED}" LIBDIR="$(get_libdir)" + dodoc ../jsd/README + dohtml README.html +} diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.2.15-r2.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.2.15-r2.ebuild new file mode 100644 index 00000000..4344ff8d --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-1.8.2.15-r2.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/spidermonkey/spidermonkey-1.8.2.15.ebuild,v 1.3 2012/05/03 02:41:39 jdhore Exp $ + +EAPI="5" +inherit eutils toolchain-funcs multilib python + +MY_PV="${PV}" +MY_PV="${MY_PV/1.8.2/3.6}" +DESCRIPTION="Stand-alone JavaScript C library" +HOMEPAGE="http://www.mozilla.org/js/spidermonkey/" +REL_URI="http://releases.mozilla.org/pub/mozilla.org/firefox/releases" +SRC_URI="${REL_URI}/${MY_PV}/source/firefox-${MY_PV}.source.tar.bz2" + +LICENSE="NPL-1.1" +SLOT="0/mozjs" +KEYWORDS="~alpha ~amd64 ~arm ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x64-macos ~x86-macos" +IUSE="threadsafe" + +S="${WORKDIR}/mozilla-1.9.2" +BUILDDIR="${S}/js/src" + +RDEPEND="threadsafe? ( >=dev-libs/nspr-4.8.6 )" + +DEPEND="${RDEPEND} + app-arch/zip + =dev-lang/python-2*[threads] + virtual/pkgconfig" + +pkg_setup(){ + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}/${PN}-1.9.2.13-as-needed.patch" + + epatch_user + + if [[ ${CHOST} == *-freebsd* ]]; then + # Don't try to be smart, this does not work in cross-compile anyway + ln -s "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" + fi +} + +src_configure() { + cd "${BUILDDIR}" || die + + local myconf + + use threadsafe && myconf="${myconf} \ + --with-system-nspr --enable-threadsafe" + + # Disable no-print-directory + MAKEOPTS=${MAKEOPTS/--no-print-directory/} + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" \ + AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \ + LD="$(tc-getLD)" PYTHON="$(PYTHON)" econf \ + ${myconf} +} + +src_compile() { + cd "${BUILDDIR}" || die + emake -j1 +} + +src_install() { + cd "${BUILDDIR}" || die + emake install DESTDIR="${D}" + dobin shell/js + dodoc ../jsd/README + dohtml README.html + + if [[ ${CHOST} == *-darwin* ]] ; then + # fixup install_name + install_name_tool -id "${EPREFIX}"/usr/$(get_libdir)/libmozjs.dylib \ + "${ED}"/usr/$(get_libdir)/libmozjs.dylib || die + fi +} diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild new file mode 100644 index 00000000..f9c92c6a --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-1.8.5-r2.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/spidermonkey/spidermonkey-1.8.5-r1.ebuild,v 1.10 2012/10/04 17:13:22 ago Exp $ + +EAPI="5" +WANT_AUTOCONF="2.1" +inherit autotools eutils toolchain-funcs multilib python versionator pax-utils + +MY_PN="js" +TARBALL_PV="$(replace_all_version_separators '' $(get_version_component_range 1-3))" +MY_P="${MY_PN}-${PV}" +TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0" +DESCRIPTION="Stand-alone JavaScript C library" +HOMEPAGE="http://www.mozilla.org/js/spidermonkey/" +SRC_URI="https://ftp.mozilla.org/pub/mozilla.org/js/${TARBALL_P}.tar.gz" + +LICENSE="NPL-1.1" +SLOT="0/mozjs185" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="debug static-libs test" + +S="${WORKDIR}/${MY_P}" +BUILDDIR="${S}/js/src" + +RDEPEND=">=dev-libs/nspr-4.7.0" +DEPEND="${RDEPEND} + app-arch/zip + =dev-lang/python-2*[threads] + virtual/pkgconfig" + +pkg_setup(){ + python_set_active_version 2 + python_pkg_setup + export LC_ALL="C" +} + +src_prepare() { + # https://bugzilla.mozilla.org/show_bug.cgi?id=628723#c43 + epatch "${FILESDIR}/${P}-fix-install-symlinks.patch" + # https://bugzilla.mozilla.org/show_bug.cgi?id=638056#c9 + epatch "${FILESDIR}/${P}-fix-ppc64.patch" + # https://bugs.gentoo.org/show_bug.cgi?id=400727 + epatch "${FILESDIR}/${P}-arm_resprect_cflags-1.patch" + + epatch_user + + if [[ ${CHOST} == *-freebsd* ]]; then + # Don't try to be smart, this does not work in cross-compile anyway + ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die + fi + + cd "${BUILDDIR}" || die + eautoconf +} + +src_configure() { + cd "${BUILDDIR}" || die + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" \ + AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \ + LD="$(tc-getLD)" PYTHON="$(PYTHON)" \ + econf \ + ${myopts} \ + --enable-jemalloc \ + --enable-readline \ + --enable-threadsafe \ + --with-system-nspr \ + $(use_enable debug) \ + $(use_enable static-libs static) \ + $(use_enable test tests) +} + +src_compile() { + cd "${BUILDDIR}" || die + if tc-is-cross-compiler; then + make CFLAGS="" CXXFLAGS="" \ + CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) \ + AR=$(tc-getBUILD_AR) RANLIB=$(tc-getBUILD_RANLIB) \ + jscpucfg host_jsoplengen host_jskwgen || die + make CFLAGS="" CXXFLAGS="" \ + CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) \ + AR=$(tc-getBUILD_AR) RANLIB=$(tc-getBUILD_RANLIB) \ + -C config nsinstall || die + mv {,native-}jscpucfg || die + mv {,native-}host_jskwgen || die + mv {,native-}host_jsoplengen || die + mv config/{,native-}nsinstall || die + sed -e 's@./jscpucfg@./native-jscpucfg@' \ + -e 's@./host_jskwgen@./native-host_jskwgen@' \ + -e 's@./host_jsoplengen@./native-host_jsoplengen@' \ + -i Makefile || die + sed -e 's@/nsinstall@/native-nsinstall@' -i config/config.mk || die + rm -f config/host_nsinstall.o \ + config/host_pathsub.o \ + host_jskwgen.o \ + host_jsoplengen.o || die + fi + emake +} + +src_test() { + cd "${BUILDDIR}/jsapi-tests" || die + emake check +} + +src_install() { + cd "${BUILDDIR}" || die + emake DESTDIR="${D}" install + dobin shell/js + pax-mark m "${ED}/usr/bin/js" + dodoc ../../README + dohtml README.html + + if ! use static-libs; then + # We can't actually disable building of static libraries + # They're used by the tests and in a few other places + find "${D}" -iname '*.a' -delete || die + fi +} diff --git a/dev-lang/spidermonkey/spidermonkey-1.8.7-r1.ebuild b/dev-lang/spidermonkey/spidermonkey-1.8.7-r1.ebuild new file mode 100644 index 00000000..2a860b11 --- /dev/null +++ b/dev-lang/spidermonkey/spidermonkey-1.8.7-r1.ebuild @@ -0,0 +1,134 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-lang/spidermonkey/spidermonkey-1.8.5-r1.ebuild,v 1.10 2012/10/04 17:13:22 ago Exp $ + +EAPI="5" +WANT_AUTOCONF="2.1" +inherit autotools eutils toolchain-funcs multilib python versionator pax-utils + +MY_PN="js" +TARBALL_PV="$(replace_all_version_separators '' $(get_version_component_range 1-3))" +MY_P="${MY_PN}-${PV}" +TARBALL_P="${MY_PN}${TARBALL_PV}-1.0.0" +SPIDERPV="${PV}-patches-0.1" +DESCRIPTION="Stand-alone JavaScript C library" +HOMEPAGE="http://www.mozilla.org/js/spidermonkey/" +SRC_URI="http://people.mozilla.com/~dmandelin/${TARBALL_P}.tar.gz + http://dev.gentoo.org/~anarchy/mozilla/patchsets/spidermonkey-${SPIDERPV}.tar.xz" + +LICENSE="NPL-1.1" +SLOT="0/mozjs187" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" +IUSE="debug jit static-libs test" + +S="${WORKDIR}/${MY_P}" +BUILDDIR="${S}/js/src" + +RDEPEND=">=dev-libs/nspr-4.7.0 + virtual/libffi" +DEPEND="${RDEPEND} + app-arch/zip + =dev-lang/python-2*[threads] + virtual/pkgconfig" + +pkg_setup(){ + python_set_active_version 2 + python_pkg_setup + export LC_ALL="C" +} + +src_prepare() { + EPATCH_SUFFIX="patch" \ + EPATCH_FORCE="yes" \ + epatch "${WORKDIR}/spidermonkey" + + epatch "${FILESDIR}"/${PN}-1.8.5-fix-install-symlinks.patch + epatch "${FILESDIR}"/${PN}-1.8.7-filter_desc.patch + epatch "${FILESDIR}"/${PN}-1.8.7-x32.patch + + epatch_user + + if [[ ${CHOST} == *-freebsd* ]]; then + # Don't try to be smart, this does not work in cross-compile anyway + ln -sfn "${BUILDDIR}/config/Linux_All.mk" "${S}/config/$(uname -s)$(uname -r).mk" || die + fi + + cd "${BUILDDIR}" || die + eautoconf +} + +src_configure() { + cd "${BUILDDIR}" || die + + CC="$(tc-getCC)" CXX="$(tc-getCXX)" \ + AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" \ + LD="$(tc-getLD)" PYTHON="$(PYTHON)" \ + econf \ + ${myopts} \ + --enable-jemalloc \ + --enable-readline \ + --enable-threadsafe \ + --with-system-nspr \ + --enable-system-ffi \ + --enable-jemalloc \ + $(use_enable debug) \ + $(use_enable jit tracejit) \ + $(use_enable jit methodjit) \ + $(use_enable static-libs static) \ + $(use_enable test tests) +} + +src_compile() { + cd "${BUILDDIR}" || die + if tc-is-cross-compiler; then + make CFLAGS="" CXXFLAGS="" \ + CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) \ + AR=$(tc-getBUILD_AR) RANLIB=$(tc-getBUILD_RANLIB) \ + jscpucfg host_jsoplengen host_jskwgen || die + make CFLAGS="" CXXFLAGS="" \ + CC=$(tc-getBUILD_CC) CXX=$(tc-getBUILD_CXX) \ + AR=$(tc-getBUILD_AR) RANLIB=$(tc-getBUILD_RANLIB) \ + -C config nsinstall || die + mv {,native-}jscpucfg || die + mv {,native-}host_jskwgen || die + mv {,native-}host_jsoplengen || die + mv config/{,native-}nsinstall || die + sed -e 's@./jscpucfg@./native-jscpucfg@' \ + -e 's@./host_jskwgen@./native-host_jskwgen@' \ + -e 's@./host_jsoplengen@./native-host_jsoplengen@' \ + -i Makefile || die + sed -e 's@/nsinstall@/native-nsinstall@' -i config/config.mk || die + rm -f config/host_nsinstall.o \ + config/host_pathsub.o \ + host_jskwgen.o \ + host_jsoplengen.o || die + fi + emake +} + +src_test() { + cd "${BUILDDIR}/jsapi-tests" || die + emake check +} + +src_install() { + cd "${BUILDDIR}" || die + emake DESTDIR="${D}" install + dobin shell/js + if use jit; then + pax-mark m "${ED}/usr/bin/js" + fi + dodoc ../../README + dohtml README.html + # install header files needed but not part of build system + insinto /usr/include/js + doins ../public/*.h + insinto /usr/include/js/mozilla + doins "${S}"/mfbt/*.h + + if ! use static-libs; then + # We can't actually disable building of static libraries + # They're used by the tests and in a few other places + find "${D}" -iname '*.a' -delete || die + fi +} -- cgit v1.2.3-65-gdbad