Porting R6B to Unixware
Vance Shipley
vances@REDACTED
Thu Dec 2 00:40:38 CET 1999
I have just completed my initial port of R6B-0 to SCO Unixware v2.1.3.
Below are the steps neccesary to make it compile. You will also have
to install the BSD Compatibility (bsdcompat) and Graphics Development
(dtxtdev) packages. The later is needed for the X11 header files.
-Vance
1) In ./erts/autoconf/i386-univel-sysv4.2MP/config.h:
Undefine HAVE_IEEE_HANDLER
(Note: Unixware requires the header file <fp.h>
In the last release just adding this define to sys.c
worked but now there are additional complications.
By undefining HAVE_IEEE_HANDLER you disable support
for the floating point signals altogether
)
2) In ./lib/erl_interface/src/i386-univel-sysv4.2MP/Makefile:
Add -DNO_PRAGMA_WEAK to CFLAGS
(Note: The configure script should handle this and does in
fact define NO_PRAGMA_WEAK in config.h however it
doesn't seem to get used. The linker will complain
unless you include this
)
3) In ./lib/gs/c_src/lib/tcl7.6/compat/strncasecmp.c at line 66:
Fix broken prototype. Change:
int strcasecmp _ANSI_ARGS_((CONST char *s1,
CONST char *s2, size_t n));
to:
int strcasecmp _ANSI_ARGS_((CONST char *s1,
CONST char *s2));
(Note: This is simply a mistake which apparently doesn't show
up in other ports.
)
3) In ./lib/etk/c_src/etk_drv.c at line 49:
Add an include for synch.h:
#if defined(POSIX_THREADS)
#include <pthread.h>
typedef pthread_t THREAD_T;
typedef pthread_mutex_t LOCK_T;
#elif defined(SOLARIS_THREADS)
#include <thread.h>
+ #include <synch.h>
typedef thread_t THREAD_T;
typedef mutex_t LOCK_T;
(Note: Unixware threads are very much like Solaris threads but
require the synch.h header file.
)
--------------------------------------------------------------------------------
----------------------
More information about the erlang-questions
mailing list