diff options
Diffstat (limited to 'dev-lisp/clozurecl')
-rw-r--r-- | dev-lisp/clozurecl/Manifest | 3 | ||||
-rw-r--r-- | dev-lisp/clozurecl/clozurecl-1.11.5.ebuild | 5 | ||||
-rw-r--r-- | dev-lisp/clozurecl/files/clozurecl-1.11.5-fno-common.patch | 110 |
3 files changed, 116 insertions, 2 deletions
diff --git a/dev-lisp/clozurecl/Manifest b/dev-lisp/clozurecl/Manifest index 20263cf80f2a..a3db1d9e7ff6 100644 --- a/dev-lisp/clozurecl/Manifest +++ b/dev-lisp/clozurecl/Manifest @@ -1,8 +1,9 @@ +AUX clozurecl-1.11.5-fno-common.patch 4161 BLAKE2B a6494cedee1020783e325ad7bf89913180c56ba920851ca1c73412feff49a1e9e7c8bf25ebb86e87c5b7334be1029ce640b9c31ab3d88d778bf2a8e56be1c4ba SHA512 7e640a4a688fde4349c12aa7415d8861ef29867047024e6ccdcec1202e5696f3ac1a058d0f312a2f1f9c6b4794e5a1fb41d55462a3500e5e35f4b685e727b191 AUX clozurecl-1.11.5-no-pie-32.patch 515 BLAKE2B 87f27e19e6bb5f33e23a96d14ab1fc14961d2673df11cba79dc7bf0ab79c13f91817bd615c9074781339bda9f6025043f9aeafc59753d457b5e80504a333d774 SHA512 20cb4ca43986176365a430f746ea4d397a9e5aa729e33510cae940afbe254471c70ed5507c5f2f2806b5161b2720b364f2ca6e2f1a03a329220ecb2998405986 DIST ccl-1.11.5-darwinx86.tar.gz 100515656 BLAKE2B d9ae52f7d0c481211fdf53bf6bb4bb65a66ab60bf1c3548e9f2d502e60906163121a85330e547d15e3d4bcb6ad47564e86dd93b4228a9391558463347011990f SHA512 1016ab9672839d1303809e9f5b849cf36dc300963672dfa5888b75f6dadee3106cd6f1375e544437a92c7307dc8639e423e12663ca157b851925d0e82f0cd4b7 DIST ccl-1.11.5-linuxarm.tar.gz 40288609 BLAKE2B 5217de314e6c59e5bbee7d5608b4e92088fb57dc0d8a90454ec4653c1710857748776d9a7ee2e89e86613f64fc028aca324ea5cb3bc7eb5e9bc582e2b50766cf SHA512 0305baa66263a2182ba8deb02837287ffb6c1472987d4953caa8839cad6503815ded7fe6bfde72a823b90d3ff86322602ee3d0934e179fb2418e3b049f55be4e DIST ccl-1.11.5-linuxx86.tar.gz 50652181 BLAKE2B 2ed6e747a72816c6f79f58715261c41a1c3b98fa84ef4ee82ca5683383741777a46a566c7884d7fdc3dcd2e5959dab2f3fde9432945a4dc73bcece8f741ed753 SHA512 b6c16d9bba27a901f942237ed42d6b3e832910951270820a2a3d61afe2a8e7f59d383c854382cfcaa0bf8253c8d624be66d905b4170211ea39a106ca85b9a23d DIST ccl-1.11.5-solarisx86.tar.gz 59139069 BLAKE2B db1a904dd4e794127e7c966a9734aa92bb0415520a6af35d92008fd785004bd2ea04deb66f600b1d1dd60c0b95519e86d412b208878aaa6c2f9f8c05a27efe38 SHA512 4ae7cee7e35de41ab20d79e073b12b6bd98a23beea95c0de7d882a1f4e1ea3f9f3162844df0578aeeadb671d30a0a488092ee93b35245c693051a4ab9193fc5b DIST ccl.html 962003 BLAKE2B fc95ec5abbea7c2f5f247293691a5c5a7eddaa049156c38766ec9df4d1920fdee902c89db976cc6687535aef5ddda3c672b62156bf0f61b6369ade548dcb0141 SHA512 0cb9ee8f7eb6007e08241a0797519ff3bfc3d3adc0b5ac86e6a2e9e8b2e316fc421bea3b04159decc0a2b37ff7098147e25266946cc3c1ac367b93e4821a8b64 -EBUILD clozurecl-1.11.5.ebuild 3100 BLAKE2B e6071a36e561df76f1b4d31b20342ea262b7986690072888b19185bf232988c8114a2ce4227e8c88a2ece25715e973f55ef03ec1b0114897d91c7bbb687153dc SHA512 ea9718c6a16e602f5d2608e2e318ec1c2d1cba34a79cccad3198f873ae74cd0b48038bb3ab8a6ddb089d62ea881842895f2eef368ec36c838c2d249a6f6adead +EBUILD clozurecl-1.11.5.ebuild 3138 BLAKE2B 83e87227a8c208781f3ebec721af7a34a02716f479df2feb34d417654daad185c798bc4d33c3dc07797bfa6e5e84286d3d3f6772f38c06920b542ba22a7e32c1 SHA512 e9fed99230d1fb375d3782cf93f4c15f5f6ecb07321c07e96cadbe7f53c456b4d5252241e5d9c2181334361176893ef7c8eb1748cf478b037e540a69cedd2e24 MISC metadata.xml 261 BLAKE2B 161dea7ab371cbcbc08b8aac63e402f9fe994c08d55f2291360e900bf73e21f2c2ea67b6fcc3cb000f1cef03d1c41c6d2e5e16dd06d6916ec90d4e54a1ba3dd7 SHA512 fb754c4ed3579db5dbe303197a05647b7cfab0a3fe47fd2140d5f77641be752d10ccf49a9c267406a0f3ba3dcda8831f778b9596d723f65aff10142bfad60d3d diff --git a/dev-lisp/clozurecl/clozurecl-1.11.5.ebuild b/dev-lisp/clozurecl/clozurecl-1.11.5.ebuild index 79b4fa4e31f6..5f7c8d3510a2 100644 --- a/dev-lisp/clozurecl/clozurecl-1.11.5.ebuild +++ b/dev-lisp/clozurecl/clozurecl-1.11.5.ebuild @@ -30,7 +30,10 @@ DEPEND="${RDEPEND}" S="${WORKDIR}"/${MY_PN} ENVD="${T}/50ccl" -PATCHES=( "${FILESDIR}"/${P}-no-pie-32.patch ) +PATCHES=( + "${FILESDIR}"/${P}-no-pie-32.patch + "${FILESDIR}"/${P}-fno-common.patch +) src_prepare() { default diff --git a/dev-lisp/clozurecl/files/clozurecl-1.11.5-fno-common.patch b/dev-lisp/clozurecl/files/clozurecl-1.11.5-fno-common.patch new file mode 100644 index 000000000000..3047a3c98b68 --- /dev/null +++ b/dev-lisp/clozurecl/files/clozurecl-1.11.5-fno-common.patch @@ -0,0 +1,110 @@ +https://bugs.gentoo.org/722618 +Submitted-by: inasprecali@disroot.org +Author: smuglispweenie@gmail.com +--- a/lisp-kernel/area.h ++++ b/lisp-kernel/area.h +@@ -108,7 +108,7 @@ Boolean grow_dynamic_area(natural); + Boolean shrink_dynamic_area(natural); + + /* serialize add_area/remove_area, and also the tcr queue */ +-void *tcr_area_lock; ++extern void *tcr_area_lock; + + #define reserved_area ((area *)(all_areas)) + #define active_dynamic_area ((area *)(reserved_area->succ)) +--- a/lisp-kernel/gc-common.c ++++ b/lisp-kernel/gc-common.c +@@ -92,6 +92,7 @@ LispObj GCarealow = 0, GCareadynamiclow = 0; + natural GCndnodes_in_area = 0, GCndynamic_dnodes_in_area = 0; + LispObj GCweakvll = (LispObj)NULL; + LispObj GCdwsweakvll = (LispObj)NULL; ++LispObj GCfirstunmarked = (LispObj) NULL; + LispObj GCephemeral_low = 0; + natural GCn_ephemeral_dnodes = 0; + natural GCstack_limit = 0; +--- a/lisp-kernel/gc.h ++++ b/lisp-kernel/gc.h +@@ -62,8 +62,8 @@ + extern LispObj GCarealow, GCareadynamiclow; + extern natural GCndnodes_in_area, GCndynamic_dnodes_in_area; + extern bitvector GCmarkbits, GCdynamic_markbits,managed_static_refbits,global_refidx,dynamic_refidx,managed_static_refidx; +-LispObj *global_reloctab, *GCrelocptr; +-LispObj GCfirstunmarked; ++extern LispObj *global_reloctab, *GCrelocptr; ++extern LispObj GCfirstunmarked; + + extern natural lisp_heap_gc_threshold; + extern natural lisp_heap_notify_threshold; +@@ -83,7 +83,6 @@ void gc(TCR *, signed_natural); + int change_hons_area_size(TCR *, signed_natural); + void delete_protected_area(protected_area_ptr); + Boolean egc_control(Boolean, BytePtr); +-Boolean free_segments_zero_filled_by_OS; + Boolean new_heap_segment(ExceptionInformation *, natural, Boolean , TCR *, Boolean *); + void platform_new_heap_segment(ExceptionInformation *, TCR*, BytePtr, BytePtr); + /* an type representing 1/4 of a natural word */ +@@ -153,19 +152,19 @@ void report_paging_info_delta(FILE*, paging_info *, paging_info *); + #define GC_TRAP_FUNCTION_FREEZE 129 + #define GC_TRAP_FUNCTION_THAW 130 + +-Boolean GCDebug, GCverbose, just_purified_p; +-bitvector GCmarkbits, GCdynamic_markbits; +-LispObj GCarealow, GCareadynamiclow; +-natural GCndnodes_in_area, GCndynamic_dnodes_in_area; +-LispObj GCweakvll,GCdwsweakvll; +-LispObj GCephemeral_low; +-natural GCn_ephemeral_dnodes; +-natural GCstack_limit; ++extern Boolean GCDebug, GCverbose, just_purified_p; ++extern bitvector GCmarkbits, GCdynamic_markbits; ++extern LispObj GCarealow, GCareadynamiclow; ++extern natural GCndnodes_in_area, GCndynamic_dnodes_in_area; ++extern LispObj GCweakvll, GCdwsweakvll; ++extern LispObj GCephemeral_low; ++extern natural GCn_ephemeral_dnodes; ++extern natural GCstack_limit; + + #if WORD_SIZE == 64 +-unsigned short *_one_bits; ++extern unsigned short *_one_bits; + #else +-const unsigned char _one_bits[256]; ++extern const unsigned char _one_bits[256]; + #endif + + #define one_bits(x) _one_bits[x] +@@ -195,11 +194,10 @@ void gc(TCR *, signed_natural); + /* backend-interface */ + + typedef void (*weak_mark_fun) (LispObj); +-weak_mark_fun mark_weak_htabv, dws_mark_weak_htabv; ++extern weak_mark_fun mark_weak_htabv, dws_mark_weak_htabv; + + typedef void (*weak_process_fun)(void); +- +-weak_process_fun markhtabvs; ++extern weak_process_fun markhtabvs; + + + #define hash_table_vector_header_count (sizeof(hash_table_vector_header)/sizeof(LispObj)) +--- a/lisp-kernel/pmcl-kernel.c ++++ b/lisp-kernel/pmcl-kernel.c +@@ -151,6 +151,8 @@ wperror(char* message) + + LispObj lisp_nil = (LispObj) 0; + bitvector global_mark_ref_bits = NULL, dynamic_mark_ref_bits = NULL, relocatable_mark_ref_bits = NULL, global_refidx = NULL, dynamic_refidx = NULL,managed_static_refidx = NULL; ++LispObj *global_reloctab = (LispObj*) 0, *GCrelocptr = (LispObj*) 0; ++void *tcr_area_lock = NULL; + + + /* These are all "persistent" : they're initialized when +--- a/lisp-kernel/threads.h ++++ b/lisp-kernel/threads.h +@@ -187,7 +187,6 @@ void tsd_set(LispObj, void *); + void *tsd_get(LispObj); + TCR *new_tcr(natural, natural); + void thread_init_tcr(TCR *tcr, void *stack_base, natural stack_size); +-TCR *initial_thread_tcr; + + #define DEFAULT_THREAD_STACK_SIZE ((size_t) -1) + #define MINIMAL_THREAD_STACK_SIZE ((size_t) 0) |