diff options
author | he <he> | 2010-04-23 14:08:17 +0000 |
---|---|---|
committer | he <he> | 2010-04-23 14:08:17 +0000 |
commit | 1ee87e5dfc51195b088842e00c00c39e06ea21ab (patch) | |
tree | bb60db6819cf17d34e037ad40d2648cf8cf036f2 /lang/parrot/patches | |
parent | b052ce6e4002df6064f79e8bd4777070b0f6130b (diff) | |
download | pkgsrc-1ee87e5dfc51195b088842e00c00c39e06ea21ab.tar.gz |
Update parrot from version 2.2.0 to 2.3.0.
Pkgsrc changes:
o Adapt our patches to up-stream changes.
o Fix PLIST to match what's being installed.
Upstream changes:
- Core
+ Allow passing parameters to the dynamic linker ('dlopen' improved)
+ loadlib opcode added
+ Calling conventions are now much more consistent, and follows natural
semantics of handling arguments and return values
+ Recursive make for src/dynpmc removed
+ Datatype STRINGNULL for a single Null STRING added
+ config_lib.pasm replaced with config_lib.pir
- Platforms
+ Improved handling of new compilers
+ Cygwin packages will be updated again with Parrot releases
+ Fedora packages add desktop files
+ gzip and bzip2 compressed tar files for releases
- Tools
+ tapir executable added; tapir is a TAP test harness
+ Added TAP options --merge --ignore-exit
- Miscellaneous
+ 3 month cycle for supported releases
+ Review and vote of GSoC applications
Diffstat (limited to 'lang/parrot/patches')
-rw-r--r-- | lang/parrot/patches/patch-ak | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/lang/parrot/patches/patch-ak b/lang/parrot/patches/patch-ak index 65e5dd4df7d..a442819cfc4 100644 --- a/lang/parrot/patches/patch-ak +++ b/lang/parrot/patches/patch-ak @@ -1,13 +1,11 @@ -$NetBSD: patch-ak,v 1.2 2010/02/18 07:59:38 he Exp $ +$NetBSD: patch-ak,v 1.3 2010/04/23 14:08:17 he Exp $ Prevent problem exposed by "library cloning", where the dlopen()-returned handle is copied, causing dlclose() to be called twice with the same handle, which in turn triggers a warning from ld.elf_so on NetBSD. Ref. http://trac.parrot.org/parrot/ticket/1340. -Index: config/gen/platform/generic/dl.c -=================================================================== ---- config/gen/platform/generic/dl.c.orig 2009-12-12 01:16:58.000000000 +0100 +--- config/gen/platform/generic/dl.c.orig 2010-03-22 13:39:23.000000000 +0100 +++ config/gen/platform/generic/dl.c @@ -22,11 +22,69 @@ Dynlib stuff */ @@ -20,6 +18,7 @@ Index: config/gen/platform/generic/dl.c #define PARROT_DLOPEN_FLAGS RTLD_LAZY ++ +#ifdef PARROT_HAS_HEADER_DLFCN + +struct handle_entry { @@ -75,24 +74,25 @@ Index: config/gen/platform/generic/dl.c +} +#endif /* PARROT_HAS_HEADER_DLFCN */ + -+ /* - =item C<void * Parrot_dlopen(const char *filename)> -@@ -39,7 +97,11 @@ void * - Parrot_dlopen(const char *filename) + =item C<void * Parrot_dlopen(const char *filename, Parrot_dlopen_flags flags)> +@@ -39,8 +97,12 @@ void * + Parrot_dlopen(const char *filename, Parrot_dlopen_flags flags) { #ifdef PARROT_HAS_HEADER_DLFCN -- return dlopen(filename, PARROT_DLOPEN_FLAGS); +- return dlopen(filename, PARROT_DLOPEN_FLAGS +- | ((flags & Parrot_dlopen_global_FLAG) ? RTLD_GLOBAL : 0)); + void *h; + -+ h = dlopen(filename, PARROT_DLOPEN_FLAGS); ++ h = dlopen(filename, PARROT_DLOPEN_FLAGS ++ | ((flags & Parrot_dlopen_global_FLAG) ? RTLD_GLOBAL : 0)); + push_handle_entry(h); + return h; #else return 0; #endif -@@ -93,10 +155,15 @@ int +@@ -94,10 +156,15 @@ int Parrot_dlclose(void *handle) { #ifdef PARROT_HAS_HEADER_DLFCN |