summaryrefslogtreecommitdiff
path: root/README.Conf
blob: 807b457afc779aa947af547f1b091110654b7b5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
From: doughera@lafcol.lafayette.edu (Andy Dougherty)
Subject: RE: First stab at Configure Support for perl5alpha
Date: Fri Apr 29 16:43:18 EDT 1994

I have incorporated various fixes/suggestions into the Configure
support for perl5alpha8.  The main changes are the following:
   -Better incorporation of extensions in Makefile.SH.
   -miniperlmain.c no longer requires dynamic loading.
   -perl can use dynamic loading if available, but extensions can
    also be compiled in statically, if desired.
   -perlmain.c now built from miniperlmain.c by writemain.SH,
    which is called in the makefile.  Only the requested extensions
    are compiled in.
   -dynamic loading broken up into dl_sunos.c, dl_next.c, dl_hpux.c.
    Configure will look for dl_$osname.c, where osname is determined
    at the same time as hints are suggested.
   -Configure support added for sdbm library (ext/dbm/sdbm/libsdbm.a).
    This still needs testing.
   -Tests for extensions now check in %Config to see if that extension
    is available.  Note, however, the sdbm is not an *optional*
    extension, so it will fail (and make test will complain)
    if sdbm is not installed.  Thus perl programmers can safely assume
    that at least sdbm is available.
   -configpm now correctly handles comments at the end of config.sh
    (which Configure places there if a hints file tries to propagate
    unknown variables, such as libswanted).
   -makedepend now works in UU/ subdirectory (so it doesn't delete
    miniperlmain.c on systems with 14-character file name limits).
   -ext/typemap:  My compiler couldn't handle some of the more complex
    casts, so an intermediate unsigned long variable has been introduced.
    I should probably re-do this in terms of a CRIPPLED_CC macro in
    XSUB.h, but it's not clear to me that it's worth it.
   -some new or updated hints files.
   -miscellaneous bug fixes.

Problems remaining:

   -POSIX module is still under construction.
   -Dynamic loading of extensions works on SunOS 4.1.3, but it
    might need modifications to work with other systems.
   -It is possible to do mixed dynamic/static loading, that is,
    load commonly used modules statically and other modules
    dynamically.  Currently, this must be done by hand by setting
    extobj in makefile and hand-editing perlmain.c.
    The newXSUB line for the static module must be moved into
    the #ifdef USE_DYNAMIC_LOADING section in perlmain.c, and the
    module .o file must be added to the extobj= line in makefile.
   -lib/[sn]dbm.t tests create a new file with a hard-wired set of
    flags.  These should be replaced with O_CREAT | O_RDWR, which
    will be available from POSIX.pm, once it is up and running.
    For now, you might have to change the 0x202 to 0x102 (or perhaps
    0x402) in lib/[sn]dbm.t for the tests to succeed.
   -I have applied several suggested fixes for use on the DEC alpha,
    but I haven't been able to keep up with all of them.
   -Though CRIPPLED_CC works, it might be desireable to have Configure
    try to figure it out.
    
To apply: 	Obtain a clean copy of perl5alpha8
		cd <your perl5alpha8 directory>
		patch -p1 < <this patch>

As before, I am willing to continue to coordinate and develop the
Configure support.

Thanks to the following for various and often quite substantial 
patches and suggestions:
	Peter Galbavy <peter@wonderland.org>
	Jarkko Hietaniemi <jhi@alpha.hut.fi>
	Andreas Koenig <koen1830@w203zrz.zrz.tu-berlin.de>
        Raphael Manfredi <ram@acri.fr>
	David Meyer <dmm0t@rincewind.mech.virginia.edu>
	Jeff Okamoto <okamoto@hpcc101.corp.hp.com>
	John Stoffel <john@WPI.EDU>
	Larry Wall (lwall@netlabs.com>

    Andy Dougherty		doughera@lafcol.lafayette.edu
    Dept. of Physics 		Phone: (610) 250-5212
    Lafayette College		FAX:   (610) 250-9263
    Easton, PA  18042-1782

=================================================================

From: doughera@lafcol.lafayette.edu (Andy Dougherty)
Subject: First stab at Configure Support for perl5alpha
Date: Mon Apr  4 15:13:50 EDT 1994

I've updated Configure to support perl5alpha7.  Consider this a
first attempt.  I am willing to continue to develop and coordinate 
improvement on this.  I've included the metaconfig units (in the U/
directory) that I developed for this.  New units, or fixes to these,
are welcome.

Here's what should work:
   -You should be able to Configure and run miniperl on any platform
    that supported perl4.

   -Configure should be more amenable to hints.  In particular,
    you can remove directories from the library search path with
    a hints file.  See hints/solaris_2_3.sh for an example.

Here's what needs improvement:
   -Including dynamic loading on works on SunOS 4.1.x, as far as I
    know, but nowhere else.  I don't understand enough about what's
    going on to put in stub functions for those who might want/have to
    use another dynamic linking package or static linking.  Configure
    assumes you want to use the dl.c source file if you try to use
    dynamic linking.  Still, you should be able to get miniperl up and
    running.

   -I haven't made any changes to installperl.

   -Makefile.SH (and hence makefile) should arrange to pick up the
    appropriate .pm modules from the extensions directory and install
    them.  I haven't done anything about that.

   -I didn't incorporate any of the Configure changes into the
    extension files, partly because I couldn't get past the dynamic
    loading problem on my main machine, but mostly because I haven't
    had the time yet.  That's near the top of the ToDo list.

   -I made no changes to the x2p/ subdirectory, though some might
    be probably needed.

   -Lots of the hints files are probably now out of date.
    The solaris_2_[23].sh ones are completely untested guesses.
    Fixed/updated version are welcome.

   -The defaults are to use perl's malloc and compile with
    -g -DDEBUGGING.  I was unable to get perl to pass all tests
    with anything else.  Part of the problem may be the stupid stub
    functions I inserted in dump.c and sv.c, but there may be other
    malloc/free problems elsewhere.

   -Whatever else I broke to get this to work.

Thanks to 
    Tim Bunce <timbo@ig.co.uk>, 
    Manoj Srivastava <srivasta@pilgrim.umass.edu>, and
    Bill Hertzing <wgh@fns.com> 
for various suggestions and help.  Thanks to Raphael Manfredi for
much work on dist-3.0.

    Andy Dougherty		doughera@lafcol.lafayette.edu
    Dept. of Physics 		Phone: (610) 250-5212
    Lafayette College		FAX:   (610) 250-9263
    Easton, PA  18042-1782