1998-05-06 03:28:45 +04:00
|
|
|
#
|
|
|
|
# The contents of this file are subject to the Netscape Public License
|
1999-04-22 01:40:44 +04:00
|
|
|
# Version 1.1 (the "NPL"); you may not use this file except in
|
1998-05-06 03:28:45 +04:00
|
|
|
# compliance with the NPL. You may obtain a copy of the NPL at
|
|
|
|
# http://www.mozilla.org/NPL/
|
|
|
|
#
|
|
|
|
# Software distributed under the NPL is distributed on an "AS IS" basis,
|
|
|
|
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
|
|
|
|
# for the specific language governing rights and limitations under the
|
|
|
|
# NPL.
|
|
|
|
#
|
|
|
|
# The Initial Developer of this code under the NPL is Netscape
|
|
|
|
# Communications Corporation. Portions created by Netscape are
|
|
|
|
# Copyright (C) 1998 Netscape Communications Corporation. All Rights
|
|
|
|
# Reserved.
|
|
|
|
#
|
|
|
|
|
|
|
|
#
|
1998-05-08 22:32:30 +04:00
|
|
|
# Config stuff for Rhapsody
|
1998-05-06 03:28:45 +04:00
|
|
|
#
|
|
|
|
|
|
|
|
include $(MOD_DEPTH)/config/UNIX.mk
|
|
|
|
|
Bugzilla bug #31697: Mac OS X (Rhapsody) port, based on the patch that
Stuart Parmenter <pavlov@netscape.com> sent to me.
Modified files: Rhapsody.mk, arch.mk, _pth.h, _rhapsody.h, prlink.c,
rhapsody.c, uxproces.c, uxrng.c, ptio.c, pr/tests/Makefile,
pr/tests/Makefile.in
2000-03-14 03:43:31 +03:00
|
|
|
#
|
|
|
|
# The default implementation strategy for Rhapsody is pthreads.
|
|
|
|
#
|
|
|
|
ifeq ($(CLASSIC_NSPR),1)
|
|
|
|
IMPL_STRATEGY = _EMU
|
|
|
|
DEFINES += -D_PR_LOCAL_THREADS_ONLY
|
|
|
|
else
|
|
|
|
USE_PTHREADS = 1
|
|
|
|
IMPL_STRATEGY = _PTH
|
|
|
|
endif
|
|
|
|
|
1998-09-26 00:34:39 +04:00
|
|
|
CC = cc
|
|
|
|
CCC = c++
|
1998-05-06 03:28:45 +04:00
|
|
|
RANLIB = ranlib
|
|
|
|
|
1998-09-26 00:34:39 +04:00
|
|
|
ifeq (86,$(findstring 86,$(OS_TEST)))
|
|
|
|
OS_REL_CFLAGS = -mno-486 -Di386
|
|
|
|
CPU_ARCH = i386
|
|
|
|
else
|
|
|
|
OS_REL_CFLAGS = -Dppc
|
1998-05-06 03:28:45 +04:00
|
|
|
CPU_ARCH = ppc
|
1998-09-26 00:34:39 +04:00
|
|
|
endif
|
1998-05-06 03:28:45 +04:00
|
|
|
|
1998-05-07 23:19:25 +04:00
|
|
|
# "Commons" are tentative definitions in a global scope, like this:
|
|
|
|
# int x;
|
|
|
|
# The meaning of a common is ambiguous. It may be a true definition:
|
|
|
|
# int x = 0;
|
|
|
|
# or it may be a declaration of a symbol defined in another file:
|
|
|
|
# extern int x;
|
|
|
|
# Use the -fno-common option to force all commons to become true
|
|
|
|
# definitions so that the linker can catch multiply-defined symbols.
|
|
|
|
# Also, common symbols are not allowed with Rhapsody dynamic libraries.
|
|
|
|
|
1998-05-08 22:32:30 +04:00
|
|
|
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -Wmost -fno-common -pipe -DRHAPSODY -DHAVE_STRERROR -DHAVE_BSD_FLOCK
|
1998-05-06 03:28:45 +04:00
|
|
|
|
|
|
|
ARCH = rhapsody
|
|
|
|
|
1998-05-08 22:32:30 +04:00
|
|
|
# May override this with -bundle to create a loadable module.
|
1998-09-26 00:34:39 +04:00
|
|
|
DSO_LDOPTS = -dynamiclib -compatibility_version 1 -current_version 1 -all_load
|
1998-05-06 03:28:45 +04:00
|
|
|
|
1998-05-08 22:32:30 +04:00
|
|
|
MKSHLIB = $(CC) -arch $(CPU_ARCH) $(DSO_LDOPTS)
|
1998-05-06 03:28:45 +04:00
|
|
|
DLL_SUFFIX = dylib
|
|
|
|
|
1998-09-26 00:34:39 +04:00
|
|
|
G++INCLUDES = -I/usr/include/g++
|