+140
-50
lines changedFilter options
+140
-50
lines changed Original file line number Diff line number Diff line change
@@ -20,7 +20,7 @@
20
20
21
21
# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
22
22
#
23
-
# Generated on Sat Feb 26 04:42:42 EET 2000 [metaconfig 3.0 PL70]
23
+
# Generated on Sat Feb 26 05:10:12 EET 2000 [metaconfig 3.0 PL70]
24
24
# (with additional metaconfig patches by perlbug@perl.com)
25
25
26
26
cat >/tmp/c1$$ <<EOF
@@ -11644,7 +11644,7 @@ case "$crosscompile" in
11644
11644
esac
11645
11645
11646
11646
case "$osname" in
11647
-
next|rhapsody) multiarch="$define" ;;
11647
+
next|rhapsody|darwin) multiarch="$define" ;;
11648
11648
esac
11649
11649
case "$multiarch" in
11650
11650
''|[nN]*) multiarch="$undef" ;;
Original file line number Diff line number Diff line change
@@ -740,7 +740,7 @@ You can elect to build a shared libperl by
740
740
741
741
To build a shared libperl, the environment variable controlling shared
742
742
library search (LD_LIBRARY_PATH in most systems, DYLD_LIBRARY_PATH for
743
-
NeXTSTEP/OPENSTEP/Rhapsody, LIBRARY_PATH for BeOS, SHLIB_PATH for
743
+
NeXTSTEP/OPENSTEP/Darwin, LIBRARY_PATH for BeOS, SHLIB_PATH for
744
744
HP-UX, LIBPATH for AIX, PATH for Cygwin) must be set up to include
745
745
the Perl build directory because that's where the shared libperl will
746
746
be created. Configure arranges makefile to have the correct shared
Original file line number Diff line number Diff line change
@@ -235,11 +235,11 @@ ext/DynaLoader/dl_aix.xs AIX implementation
235
235
ext/DynaLoader/dl_beos.xs BeOS implementation
236
236
ext/DynaLoader/dl_dld.xs GNU dld style implementation
237
237
ext/DynaLoader/dl_dlopen.xs BSD/SunOS4&5 dlopen() style implementation
238
+
ext/DynaLoader/dl_dyld.xs NeXT/Apple dyld implementation
238
239
ext/DynaLoader/dl_hpux.xs HP-UX implementation
239
240
ext/DynaLoader/dl_mpeix.xs MPE/iX implementation
240
-
ext/DynaLoader/dl_next.xs Next implementation
241
+
ext/DynaLoader/dl_next.xs NeXT implementation
241
242
ext/DynaLoader/dl_none.xs Stub implementation
242
-
ext/DynaLoader/dl_rhapsody.xs Rhapsody implementation
243
243
ext/DynaLoader/dl_vmesa.xs VM/ESA implementation
244
244
ext/DynaLoader/dl_vms.xs VMS implementation
245
245
ext/DynaLoader/dlutils.c Dynamic loader utilities for dl_*.xs files
@@ -440,6 +440,7 @@ hints/bsdos.sh Hints for named architecture
440
440
hints/convexos.sh Hints for named architecture
441
441
hints/cxux.sh Hints for named architecture
442
442
hints/cygwin.sh Hints for named architecture
443
+
hints/darwin.sh Hints for named architecture
443
444
hints/dcosx.sh Hints for named architecture
444
445
hints/dec_osf.sh Hints for named architecture
445
446
hints/dgux.sh Hints for named architecture
Original file line number Diff line number Diff line change
@@ -45,6 +45,14 @@ true)
45
45
-compatibility_version 1 -current_version $patchlevel \
46
46
-prebind -seg1addr 0x27000000 -install_name \$(shrpdir)/\$@"
47
47
;;
48
+
rhapsody*|darwin*)
49
+
shrpldflags="${ldflags} -dynamiclib \
50
+
-compatibility_version 1 \
51
+
-current_version \
52
+
${api_version}.${api_subversion} \
53
+
-image_base 0x4be00000 \
54
+
-install_name \$(shrpdir)/\$@"
55
+
;;
48
56
cygwin*)
49
57
linklibperl="-lperl"
50
58
;;
@@ -76,9 +84,6 @@ true)
76
84
os2)
77
85
ldlibpth=''
78
86
;;
79
-
rhapsody)
80
-
eval "ldlibpth=\"$ldlibpthname=`pwd`/Perl:\$$ldlibpthname\""
81
-
;;
82
87
*)
83
88
eval "ldlibpth=\"$ldlibpthname=`pwd`:\$$ldlibpthname\""
84
89
;;
@@ -532,6 +537,9 @@ extra.pods: miniperl
532
537
-@test -f README.vms && $(LNS) ../README.vms pod/README_vms.pod && echo "pod/README_vms.pod" >> extra.pods
533
538
-@test -f vms/perlvms.pod && $(LNS) ../vms/perlvms.pod pod/perlvms.pod && echo "pod/perlvms.pod" >> extra.pods
534
539
540
+
install-strip:
541
+
$(MAKE) STRIPFLAGS=-s install
542
+
535
543
install: all install.perl install.man
536
544
537
545
install.perl: all installperl
@@ -542,7 +550,7 @@ install.perl: all installperl
542
550
cd ../pod; $(MAKE) compile; \
543
551
else :; \
544
552
fi
545
-
$(LDLIBPTH) ./perl installperl
553
+
$(LDLIBPTH) ./perl installperl $(STRIPFLAGS)
546
554
547
555
install.man: all installman
548
556
$(LDLIBPTH) ./perl installman
Original file line number Diff line number Diff line change
@@ -51,7 +51,7 @@ from the "Problems" section.
51
51
52
52
* OpenBSD
53
53
54
-
* NeXTstep, OpenStep (Rhapsody?)
54
+
* NeXTstep, OpenStep
55
55
56
56
* OS/2
57
57
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
1
-
/* dl_rhapsody.xs
1
+
/* dl_dyld.xs
2
2
*
3
-
* Platform: Apple Rhapsody 5.0
3
+
* Platform: Darwin (Mac OS)
4
+
* Author: Wilfredo Sanchez <wsanchez@apple.com>
4
5
* Based on: dl_next.xs by Paul Marquess
5
6
* Based on: dl_dlopen.xs by Anno Siegel
6
7
* Created: Aug 15th, 1994
@@ -16,18 +17,23 @@
16
17
17
18
/* Porting notes:
18
19
19
-
dl_next.xs is itself a port from dl_dlopen.xs by Paul Marquess. It
20
+
dl_dyld.xs is based on dl_next.xs by Anno Siegel.
21
+
22
+
dl_next.xs is in turn a port from dl_dlopen.xs by Paul Marquess. It
20
23
should not be used as a base for further ports though it may be used
21
24
as an example for how dl_dlopen.xs can be ported to other platforms.
22
25
23
26
The method used here is just to supply the sun style dlopen etc.
24
-
functions in terms of NeXTs rld_*. The xs code proper is unchanged
25
-
from Paul's original.
27
+
functions in terms of NeXT's/Apple's dyld. The xs code proper is
28
+
unchanged from Paul's original.
26
29
27
30
The port could use some streamlining. For one, error handling could
28
31
be simplified.
29
32
30
-
Anno Siegel
33
+
This should be useable as a replacement for dl_next.xs, but it has not
34
+
been tested on NeXT platforms.
35
+
36
+
Wilfredo Sanchez
31
37
32
38
*/
33
39
@@ -40,6 +46,7 @@ Anno Siegel
40
46
#include "dlutils.c" /* SaveError() etc */
41
47
42
48
#undef environ
49
+
#undef bool
43
50
#import <mach-o/dyld.h>
44
51
45
52
static char * dl_last_error = (char *) 0;
@@ -216,4 +223,4 @@ dl_error()
216
223
OUTPUT:
217
224
RETVAL
218
225
219
-
+# end.
226
+
# end.
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
1
+
##
2
+
# Darwin (Mac OS) hints
3
+
# Wilfredo Sanchez <wsanchez@apple.com>
4
+
##
5
+
6
+
##
7
+
# Paths
8
+
##
9
+
10
+
# BSD paths
11
+
prefix='/usr';
12
+
siteprefix='/usr/local';
13
+
vendorprefix='/usr/local'; usevendorprefix='define';
14
+
15
+
# 4BSD uses /usr/share/man, not /usr/man.
16
+
# Don't put man pages in /usr/lib; that's goofy.
17
+
man1dir='/usr/share/man/man1';
18
+
man3dir='/usr/share/man/man3';
19
+
20
+
# Where to put modules.
21
+
privlib='/System/Library/Perl';
22
+
sitelib='/Local/Library/Perl';
23
+
vendorlib='/Network/Library/Perl';
24
+
25
+
##
26
+
# Tool chain settings
27
+
##
28
+
29
+
# Since we can build fat, the archname doesn't need the processor type
30
+
archname='darwin';
31
+
32
+
# nm works.
33
+
usenm='true';
34
+
35
+
# Libc is in libsystem.
36
+
libc='/System/Library/Frameworks/System.framework/System';
37
+
38
+
# Optimize.
39
+
optimize='-O3';
40
+
41
+
# We have a prototype for telldir.
42
+
ccflags="${ccflags} -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE";
43
+
44
+
# Shared library extension is .dylib.
45
+
# Bundle extension is .bundle.
46
+
ld='cc';
47
+
so='dylib';
48
+
dlext='bundle';
49
+
dlsrc='dl_dyld.xs'; usedl='define';
50
+
cccdlflags='';
51
+
lddlflags="${ldflags} -bundle -undefined suppress";
52
+
ldlibpthname='DYLD_LIBRARY_PATH';
53
+
useshrplib='true';
54
+
55
+
##
56
+
# System libraries
57
+
##
58
+
59
+
# vfork works
60
+
usevfork='true';
61
+
62
+
# malloc works
63
+
usemymalloc='n';
Original file line number Diff line number Diff line change
@@ -3,57 +3,65 @@
3
3
# Wilfredo Sanchez <wsanchez@apple.com>
4
4
##
5
5
6
-
# Since we can build fat, the archname doesn't need the processor type
7
-
archname='rhapsody';
6
+
##
7
+
# Paths
8
+
##
8
9
9
-
# Perl5.003 precedes this platform
10
-
d_bincompat3='undef';
10
+
# BSD paths
11
+
prefix='/usr';
12
+
siteprefix='/usr/local';
13
+
vendorprefix='/usr/local'; usevendorprefix='define';
11
14
12
-
# Libc is in libsystem.
13
-
libc='/System/Library/Frameworks/System.framework/System';
15
+
# 4BSD uses /usr/share/man, not /usr/man.
16
+
# Don't put man pages in /usr/lib; that's goofy.
17
+
man1dir='/usr/share/man/man1';
18
+
man3dir='/usr/share/man/man3';
19
+
20
+
# Where to put modules.
21
+
privlib='/System/Library/Perl';
22
+
sitelib='/Local/Library/Perl';
23
+
vendorlib='/Network/Library/Perl';
24
+
25
+
##
26
+
# Tool chain settings
27
+
##
28
+
29
+
# Since we can build fat, the archname doesn't need the processor type
30
+
archname='rhapsody';
14
31
15
32
# nm works.
16
33
usenm='true';
34
+
35
+
# Libc is in libsystem.
36
+
libc='/System/Library/Frameworks/System.framework/System';
17
37
18
38
# Optimize.
19
39
optimize='-O3';
20
40
21
41
# We have a prototype for telldir.
22
-
# We are not NeXTStep.
23
-
ccflags="${ccflags} -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE -UNeXT -U__NeXT__";
42
+
ccflags="${ccflags} -pipe -fno-common -DHAS_TELLDIR_PROTOTYPE";
24
43
25
-
# Don't use /usr/local/lib; we may have junk there.
26
-
libpth='/lib /usr/lib';
27
-
28
-
# Shared library extension in .dylib.
29
-
# Bundle extension in .bundle.
44
+
# Shared library extension is .dylib.
45
+
# Bundle extension is .bundle.
30
46
ld='cc';
31
47
so='dylib';
32
48
dlext='bundle';
33
-
dlsrc='dl_rhapsody.xs';
49
+
dlsrc='dl_dyld.xs';
50
+
usedl='define';
34
51
cccdlflags='';
35
52
lddlflags="${ldflags} -bundle -undefined suppress";
53
+
ldlibpthname='DYLD_LIBRARY_PATH';
36
54
useshrplib='true';
37
-
libperl='Perl';
38
-
framework_path='/System/Library/Frameworks/Perl.framework';
39
55
base_address='0x4be00000';
40
56
41
-
# 4BSD uses /usr/share/man, not /usr/man.
42
-
# Don't put man pages in /usr/lib; that's goofy.
43
-
man1dir='/usr/share/man/man1';
44
-
man3dir='/usr/share/man/man3';
45
-
46
-
# Where to put modules.
47
-
privlib='/System/Library/Perl';
48
-
sitelib='/Local/Library/Perl';
49
-
57
+
##
58
+
# System libraries
59
+
##
60
+
50
61
# vfork works
51
62
usevfork='true';
52
63
53
64
# malloc works
54
65
usemymalloc='n';
55
66
56
-
case "$ldlibpthname" in
57
-
'') ldlibpthname=DYLD_LIBRARY_PATH ;;
58
-
esac
59
67
Original file line number Diff line number Diff line change
@@ -8,7 +8,7 @@ BEGIN {
8
8
}
9
9
10
10
use strict;
11
-
use vars qw($Is_VMS $Is_W32 $Is_OS2 $Is_Cygwin $nonono $versiononly $depth);
11
+
use vars qw($Is_VMS $Is_W32 $Is_OS2 $Is_Cygwin $nonono $dostrip $versiononly $depth);
12
12
13
13
BEGIN {
14
14
$Is_VMS = $^O eq 'VMS';
@@ -50,6 +50,7 @@ my $perl_verbase = defined($ENV{PERLNAME_VERBASE})
50
50
51
51
while (@ARGV) {
52
52
$nonono = 1 if $ARGV[0] eq '-n';
53
+
$dostrip = 1 if $ARGV[0] eq '-s';
53
54
$versiononly = 1 if $ARGV[0] eq '-v';
54
55
shift;
55
56
}
@@ -196,7 +197,7 @@ elsif ($^O eq 'mpeix') {
196
197
elsif ($^O ne 'dos') {
197
198
safe_unlink("$installbin/$perl_verbase$ver$exe_ext");
198
199
copy("perl$exe_ext", "$installbin/$perl_verbase$ver$exe_ext");
199
-
strip("$installbin/$perl_verbase$ver$exe_ext") if $^O =~ /^(rhapsody)$/;
200
+
strip("$installbin/$perl_verbase$ver$exe_ext");
200
201
chmod(0755, "$installbin/$perl_verbase$ver$exe_ext");
201
202
}
202
203
else {
@@ -259,9 +260,9 @@ foreach my $file (@corefiles) {
259
260
# HP-UX (at least) needs to maintain execute permissions
260
261
# on dynamically-loadable libraries. So we do it for all.
261
262
if (copy_if_diff($file,"$installarchlib/CORE/$file")) {
262
-
if ($file =~ /\.(so|\Q$dlext\E)$/) {
263
+
if ($file =~ /\.(\Q$so\E|\Q$dlext\E)$/) {
263
264
chmod(0555, "$installarchlib/CORE/$file");
264
-
strip("-S", "$installarchlib/CORE/$file") if $^O =~ /^(rhapsody)$/;
265
+
strip("-S", "$installarchlib/CORE/$file") if $^O =~ /^(rhapsody|darwin)$/;
265
266
} else {
266
267
chmod(0444, "$installarchlib/CORE/$file");
267
268
}
@@ -651,6 +652,8 @@ sub strip
651
652
{
652
653
my(@args) = @_;
653
654
655
+
return unless $dostrip;
656
+
654
657
my @opts;
655
658
while (@args && $args[0] =~ /^(-\w+)$/) {
656
659
push @opts, shift @args;
Original file line number Diff line number Diff line change
@@ -928,7 +928,7 @@ PP(pp_sselect)
928
928
/* If SELECT_MIN_BITS is greater than one we most probably will want
929
929
* to align the sizes with SELECT_MIN_BITS/8 because for example
930
930
* in many little-endian (Intel, Alpha) systems (Linux, OS/2, Digital
931
-
* UNIX, Solaris, NeXT, Rhapsody) the smallest quantum select() operates
931
+
* UNIX, Solaris, NeXT, Darwin) the smallest quantum select() operates
932
932
* on (sets/tests/clears bits) is 32 bits. */
933
933
growsize = maxlen + (SELECT_MIN_BITS/8 - (maxlen % (SELECT_MIN_BITS/8)));
934
934
# else
You can’t perform that action at this time.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4