зеркало из https://github.com/mozilla/gecko-dev.git
Initial checkin of the NSS build environment for the open source release
This commit is contained in:
Родитель
98536e5bea
Коммит
c52dab758c
|
@ -0,0 +1,273 @@
|
|||
#!/bin/csh
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Startup file for csh and tcsh. It is meant to work on:
|
||||
#
|
||||
# SunOS 4.1.3_U1,
|
||||
# Sun Solaris,
|
||||
# Sun Solaris on Intel,
|
||||
# SGI IRIX,
|
||||
# SGI IRIX64,
|
||||
# UNIX_SV,
|
||||
# IBM AIX,
|
||||
# Hewlett-Packard HP-UX,
|
||||
# SCO_SV,
|
||||
# FreeBSD,
|
||||
# DEC OSF/1,
|
||||
# Linux,
|
||||
# and everything else.
|
||||
#
|
||||
|
||||
###############################################
|
||||
# Set operating system name and release level #
|
||||
###############################################
|
||||
|
||||
set os_name=`uname -s`
|
||||
set os_release=`uname -r`
|
||||
|
||||
##########################################################
|
||||
# Set environment variables based upon operating system #
|
||||
##########################################################
|
||||
|
||||
if ($os_name == "SunOS" && $os_release == "4.1.3_U1") then
|
||||
##############################
|
||||
# SunOS 4.1.3_U1
|
||||
#
|
||||
|
||||
setenv NO_MDUPDATE 1
|
||||
|
||||
set path = ( /tools/ns/soft/gcc-2.6.3/run/default/sparc_sun_sunos4.1.3_U1/bin \
|
||||
/tools/ns/bin \
|
||||
/sbin \
|
||||
/usr/bin \
|
||||
/usr/openwin/bin \
|
||||
/usr/openwin/include \
|
||||
/usr/ucb \
|
||||
/usr/local/bin \
|
||||
/etc \
|
||||
/usr/etc \
|
||||
/usr/etc/install \
|
||||
. )
|
||||
|
||||
else if ($os_name == "SunOS") then
|
||||
################################
|
||||
# Assume it is Sun Solaris
|
||||
#
|
||||
|
||||
# To build Navigator on Solaris 2.5, I must set the environment
|
||||
# variable NO_MDUPDATE and use gcc-2.6.3.
|
||||
setenv NO_MDUPDATE 1
|
||||
|
||||
set path = ( /share/builds/components/jdk/1.2.2_01/SunOS \
|
||||
/usr/ccs/bin \
|
||||
/usr/opt/bin \
|
||||
/tools/ns/bin \
|
||||
/usr/sbin \
|
||||
/sbin \
|
||||
/usr/bin \
|
||||
/usr/dt/bin \
|
||||
/usr/openwin/bin \
|
||||
/usr/openwin/include \
|
||||
/usr/ucb \
|
||||
/usr/opt/java/bin \
|
||||
/usr/local/bin \
|
||||
/etc \
|
||||
/usr/etc \
|
||||
/usr/etc/install \
|
||||
/opt/Acrobat3/bin \
|
||||
. )
|
||||
|
||||
# To get the native Solaris cc
|
||||
if (`uname -m` == i86pc) then
|
||||
set path = ( /h/solx86/export/home/opt/SUNWspro/SC3.0.1/bin \
|
||||
$path )
|
||||
else
|
||||
set path = ( /tools/ns/workshop/bin \
|
||||
/tools/ns/soft/gcc-2.6.3/run/default/sparc_sun_solaris2.4/bin \
|
||||
$path )
|
||||
endif
|
||||
|
||||
setenv LD_LIBRARY_PATH /share/builds/components/jdk/1.2.2_01/SunOS/lib/sparc/native_threads
|
||||
|
||||
setenv MANPATH /usr/local/man:/usr/local/lib/mh/man:/usr/local/lib/rcscvs/man:/usr/local/lib/fvwm/man:/usr/local/lib/xscreensaver/man:/usr/share/man:/usr/openwin/man:/usr/opt/man
|
||||
|
||||
# For Purify
|
||||
setenv PURIFYHOME /usr/local-sparc-solaris/pure/purify-4.0-solaris2
|
||||
setenv PATH ${PURIFYHOME}:$PATH
|
||||
setenv MANPATH $PURIFYHOME/man:$MANPATH
|
||||
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:$PURIFYHOME
|
||||
setenv PURIFYOPTIONS "-max_threads=1000 -follow-child-processes=yes"
|
||||
|
||||
else if ($os_name == "IRIX" || $os_name == "IRIX64") then
|
||||
#############
|
||||
# SGI Irix
|
||||
#
|
||||
|
||||
set path = ( /share/builds/components/jdk/1.2.1/IRIX \
|
||||
/tools/ns/bin \
|
||||
/tools/contrib/bin \
|
||||
/usr/local/bin \
|
||||
/usr/sbin \
|
||||
/usr/bsd \
|
||||
/usr/bin \
|
||||
/bin \
|
||||
/etc \
|
||||
/usr/etc \
|
||||
/usr/bin/X11 \
|
||||
. )
|
||||
|
||||
else if ($os_name == "UNIX_SV") then
|
||||
#################
|
||||
# UNIX_SV
|
||||
#
|
||||
|
||||
set path = ( /usr/local/bin \
|
||||
/tools/ns/bin \
|
||||
/bin \
|
||||
/usr/bin \
|
||||
/usr/bin/X11 \
|
||||
/X11/bin \
|
||||
/usr/X/bin \
|
||||
/usr/ucb \
|
||||
/usr/sbin \
|
||||
/sbin \
|
||||
/usr/ccs/bin \
|
||||
. )
|
||||
|
||||
else if ($os_name == "AIX") then
|
||||
#################
|
||||
# IBM AIX
|
||||
#
|
||||
|
||||
set path = ( /share/builds/components/jdk/1.2.2/AIX \
|
||||
/usr/ucb/ \
|
||||
/tools/ns-arch/rs6000_ibm_aix4.1/bin \
|
||||
/tools/ns-arch/rs6000_ibm_aix3.2.5/bin \
|
||||
/share/tools/ns/soft/cvs-1.8/run/default/rs6000_ibm_aix3.2.5/bin \
|
||||
/bin \
|
||||
/usr/bin \
|
||||
/usr/ccs/bin \
|
||||
/usr/sbin \
|
||||
/usr/local/bin \
|
||||
/usr/bin/X11 \
|
||||
/usr/etc \
|
||||
/etc \
|
||||
/sbin \
|
||||
. )
|
||||
|
||||
else if ($os_name == "HP-UX") then
|
||||
#################
|
||||
# HP UX
|
||||
#
|
||||
|
||||
set path = ( /share/builds/components/jdk/1.1.6/HP-UX \
|
||||
/usr/bin \
|
||||
/opt/ansic/bin \
|
||||
/usr/ccs/bin \
|
||||
/usr/contrib/bin \
|
||||
/opt/nettladm/bin \
|
||||
/opt/graphics/common/bin \
|
||||
/usr/bin/X11 \
|
||||
/usr/contrib/bin/X11 \
|
||||
/opt/upgrade/bin \
|
||||
/opt/CC/bin \
|
||||
/opt/aCC/bin \
|
||||
/opt/langtools/bin \
|
||||
/opt/imake/bin \
|
||||
/etc \
|
||||
/usr/etc \
|
||||
/usr/local/bin \
|
||||
/tools/ns/bin \
|
||||
/tools/contrib/bin \
|
||||
/usr/sbin \
|
||||
/usr/local/bin \
|
||||
/tools/ns/bin \
|
||||
/tools/contrib/bin \
|
||||
/usr/sbin \
|
||||
/usr/include/X11R5 \
|
||||
. )
|
||||
|
||||
else if ($os_name == "SCO_SV") then
|
||||
#################
|
||||
# SCO
|
||||
#
|
||||
|
||||
set path = ( /bin \
|
||||
/usr/bin \
|
||||
/tools/ns/bin \
|
||||
/tools/contrib/bin \
|
||||
/usr/sco/bin \
|
||||
/usr/bin/X11 \
|
||||
/usr/local/bin \
|
||||
. )
|
||||
|
||||
else if ($os_name == "FreeBSD") then
|
||||
#################
|
||||
# FreeBSD
|
||||
#
|
||||
|
||||
setenv PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin:/usr/local/java/bin:/usr/local/bin:/usr/ucb:/usr/ccs/bin:/tools/contrib/bin:/tools/ns/bin:.
|
||||
|
||||
else if ($os_name == "OSF1") then
|
||||
#################
|
||||
# DEC OSF1
|
||||
#
|
||||
|
||||
set path = ( /share/builds/components/jdk/1.2.2_3/OSF1 \
|
||||
/tools/ns-arch/alpha_dec_osf4.0/bin \
|
||||
/tools/ns-arch/soft/cvs-1.8.3/run/default/alpha_dec_osf2.0/bin \
|
||||
/usr/local-alpha-osf/bin \
|
||||
/usr3/local/bin \
|
||||
/usr/local/bin \
|
||||
/usr/sbin \
|
||||
/usr/bin \
|
||||
/bin \
|
||||
/usr/bin/X11 \
|
||||
/usr/ucb \
|
||||
. )
|
||||
|
||||
else if ($os_name == "Linux") then
|
||||
#################
|
||||
# Linux
|
||||
#
|
||||
|
||||
set path = ( /share/builds/components/jdk/1.2.2/Linux \
|
||||
$path )
|
||||
|
||||
endif
|
||||
|
||||
###############################
|
||||
# Reset any "tracked" aliases #
|
||||
###############################
|
||||
|
||||
rehash
|
|
@ -0,0 +1,216 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Startup file for sh, ksh and bash. It is meant to work on:
|
||||
#
|
||||
# SunOS 4.1.3_U1,
|
||||
# Sun Solaris,
|
||||
# Sun Solaris on Intel,
|
||||
# SGI IRIX,
|
||||
# SGI IRIX64,
|
||||
# UNIX_SV,
|
||||
# IBM AIX,
|
||||
# Hewlett-Packard HP-UX,
|
||||
# SCO_SV,
|
||||
# FreeBSD,
|
||||
# DEC OSF/1,
|
||||
# Linux,
|
||||
# and everything else.
|
||||
#
|
||||
|
||||
###############################################
|
||||
# Set operating system name and release level #
|
||||
###############################################
|
||||
|
||||
OS_NAME=`uname -s`
|
||||
export OS_NAME
|
||||
|
||||
OS_RELEASE=`uname -r`
|
||||
export OS_RELEASE
|
||||
|
||||
##########################################################
|
||||
# Set environment variables based upon operating system #
|
||||
##########################################################
|
||||
|
||||
case $OS_NAME in
|
||||
|
||||
SunOS)
|
||||
##############################
|
||||
# Sun
|
||||
#
|
||||
|
||||
case $OS_RELEASE in
|
||||
|
||||
4.1.3_U1)
|
||||
##############################
|
||||
# SunOS 4.1.3_U1
|
||||
#
|
||||
|
||||
NO_MDUPDATE=1
|
||||
export NO_MDUPDATE
|
||||
|
||||
PATH=/tools/ns/soft/gcc-2.6.3/run/default/sparc_sun_sunos4.1.3_U1/bin:tools/ns/bin:/sbin:/usr/bin:/usr/openwin/bin:/usr/openwin/include:/usr/ucb:/usr/local/bin:/etc:/usr/etc:/usr/etc/install:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
*)
|
||||
################################
|
||||
# Assume it is Sun Solaris
|
||||
#
|
||||
|
||||
# To build Navigator on Solaris 2.5, I must set the environment
|
||||
# variable NO_MDUPDATE and use gcc-2.6.3.
|
||||
NO_MDUPDATE=1
|
||||
export NO_MDUPDATE
|
||||
|
||||
PATH=/share/builds/components/jdk/1.2.2_01/SunOS:/usr/ccs/bin:/usr/opt/bin:/tools/ns/bin:/usr/sbin:/sbin:/usr/bin:/usr/dt/bin:/usr/openwin/bin:/usr/openwin/include:/usr/ucb:/usr/opt/java/bin:/usr/local/bin:/etc:/usr/etc:/usr/etc/install:/opt/Acrobat3/bin:.
|
||||
export PATH
|
||||
|
||||
# To get the native Solaris cc
|
||||
OS_TEST=`uname -m`
|
||||
export OS_TEST
|
||||
|
||||
case $OS_TEST in
|
||||
|
||||
i86pc)
|
||||
PATH=/h/solx86/export/home/opt/SUNWspro/SC3.0.1/bin:$PATH
|
||||
export PATH
|
||||
;;
|
||||
|
||||
*)
|
||||
PATH=/tools/ns/workshop/bin:/tools/ns/soft/gcc-2.6.3/run/default/sparc_sun_solaris2.4/bin:$PATH
|
||||
export PATH
|
||||
;;
|
||||
esac
|
||||
|
||||
LD_LIBRARY_PATH=/share/builds/components/jdk/1.2.2_01/SunOS/lib/sparc/native_threads
|
||||
export LD_LIBRARY_PATH
|
||||
|
||||
MANPATH=/usr/local/man:/usr/local/lib/mh/man:/usr/local/lib/rcscvs/man:/usr/local/lib/fvwm/man:/usr/local/lib/xscreensaver/man:/usr/share/man:/usr/openwin/man:/usr/opt/man
|
||||
export MANPATH
|
||||
|
||||
# For Purify
|
||||
PURIFYHOME=/usr/local-sparc-solaris/pure/purify-4.0-solaris2
|
||||
export PURIFYHOME
|
||||
PATH=/usr/local-sparc-solaris/pure/purify-4.0-solaris2:$PATH
|
||||
export PATH
|
||||
MANPATH=$PURIFYHOME/man:$MANPATH
|
||||
export MANPATH
|
||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local-sparc-solaris/pure/purify-4.0-solaris2
|
||||
export LD_LIBRARY_PATH
|
||||
PURIFYOPTIONS="-max_threads=1000 -follow-child-processes=yes"
|
||||
export PURIFYOPTIONS
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
|
||||
IRIX | IRIX64)
|
||||
#############
|
||||
# SGI Irix
|
||||
#
|
||||
|
||||
PATH=/share/builds/components/jdk/1.2.1/IRIX:/tools/ns/bin:/tools/contrib/bin:/usr/local/bin:/usr/sbin:/usr/bsd:/usr/bin:/bin:/etc:/usr/etc:/usr/bin/X11:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
UNIX_SV)
|
||||
#################
|
||||
# UNIX_SV
|
||||
#
|
||||
|
||||
PATH=/usr/local/bin:/tools/ns/bin:/bin:/usr/bin:/usr/bin/X11:/X11/bin:/usr/X/bin:/usr/ucb:/usr/sbin:/sbin:/usr/ccs/bin:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
AIX)
|
||||
#################
|
||||
# IBM AIX
|
||||
#
|
||||
|
||||
PATH=/share/builds/components/jdk/1.2.2/AIX:/usr/ucb/:/tools/ns-arch/rs6000_ibm_aix4.1/bin:/tools/ns-arch/rs6000_ibm_aix3.2.5/bin:/share/tools/ns/soft/cvs-1.8/run/default/rs6000_ibm_aix3.2.5/bin:/bin:/usr/bin:/usr/ccs/bin:/usr/sbin:/usr/local/bin:/usr/bin/X11:/usr/etc:/etc:/sbin:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
HP-UX)
|
||||
#################
|
||||
# HP UX
|
||||
#
|
||||
|
||||
PATH=/share/builds/components/jdk/1.1.6/HP-UX:/usr/bin:/opt/ansic/bin:/usr/ccs/bin:/usr/contrib/bin:/opt/nettladm/bin:/opt/graphics/common/bin:/usr/bin/X11:/usr/contrib/bin/X11:/opt/upgrade/bin:/opt/CC/bin:/opt/aCC/bin:/opt/langtools/bin:/opt/imake/bin:/etc:/usr/etc:/usr/local/bin:/tools/ns/bin:/tools/contrib/bin:/usr/sbin:/usr/local/bin:/tools/ns/bin:/tools/contrib/bin:/usr/sbin:/usr/include/X11R5:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
SCO_SV)
|
||||
#################
|
||||
# SCO
|
||||
#
|
||||
|
||||
PATH=/bin:/usr/bin:/tools/ns/bin:/tools/contrib/bin:/usr/sco/bin:/usr/bin/X11:/usr/local/bin:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
FreeBSD)
|
||||
|
||||
#################
|
||||
# FreeBSD
|
||||
#
|
||||
|
||||
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin:/usr/local/java/bin:/usr/local/bin:/usr/ucb:/usr/ccs/bin:/tools/contrib/bin:/tools/ns/bin:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
OSF1)
|
||||
#################
|
||||
# DEC OSF1
|
||||
#
|
||||
|
||||
PATH=/share/builds/components/jdk/1.2.2_3/OSF1:/tools/ns-arch/alpha_dec_osf4.0/bin:/tools/ns-arch/soft/cvs-1.8.3/run/default/alpha_dec_osf2.0/bin:/usr/local-alpha-osf/bin:/usr3/local/bin:/usr/local/bin:/usr/sbin:/usr/bin:/bin:/usr/bin/X11:/usr/ucb:.
|
||||
export PATH
|
||||
;;
|
||||
|
||||
Linux)
|
||||
|
||||
#################
|
||||
# Linux
|
||||
#
|
||||
|
||||
PATH=/share/builds/components/jdk/1.2.2/Linux:$PATH
|
||||
export PATH
|
||||
;;
|
||||
esac
|
||||
|
||||
###############################
|
||||
# Reset any "tracked" aliases #
|
||||
###############################
|
||||
|
||||
hash -r
|
|
@ -0,0 +1,74 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for AIX.
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
#
|
||||
# There are two implementation strategies available on AIX:
|
||||
# pthreads, and pthreads-user. The default is pthreads.
|
||||
# In both strategies, we need to use pthread_user.c, instead of
|
||||
# aix.c. The fact that aix.c is never used is somewhat strange.
|
||||
#
|
||||
# So we need to do the following:
|
||||
# - Default (PTHREADS_USER not defined in the environment or on
|
||||
# the command line):
|
||||
# Set PTHREADS_USER=1, USE_PTHREADS=1
|
||||
# - PTHREADS_USER=1 set in the environment or on the command line:
|
||||
# Do nothing.
|
||||
#
|
||||
ifeq ($(PTHREADS_USER),1)
|
||||
USE_PTHREADS = # just to be safe
|
||||
IMPL_STRATEGY = _PTH_USER
|
||||
else
|
||||
USE_PTHREADS = 1
|
||||
PTHREADS_USER = 1
|
||||
endif
|
||||
|
||||
DEFAULT_COMPILER = xlC_r
|
||||
|
||||
CC = xlC_r
|
||||
CCC = xlC_r
|
||||
|
||||
CPU_ARCH = rs6000
|
||||
|
||||
RANLIB = ranlib
|
||||
|
||||
OS_CFLAGS = -DAIX -DSYSV
|
||||
ifeq ($(CC),xlC_r)
|
||||
OS_CFLAGS += -qarch=com
|
||||
endif
|
||||
|
||||
AIX_WRAP = $(DIST)/lib/aixwrap.o
|
||||
AIX_TMP = $(OBJDIR)/_aix_tmp.o
|
||||
OS_LIBS += -lsvld
|
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for AIX3.2.5
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/AIX.mk
|
|
@ -0,0 +1,46 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for AIX4.1
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/AIX.mk
|
||||
|
||||
|
||||
AIX_LINK_OPTS += -bnso -berok
|
||||
#AIX_LINK_OPTS += -bnso -berok -brename:.select,.wrap_select -brename:.poll,.wrap_poll -bI:/usr/lib/syscalls.exp
|
||||
|
||||
# The AIX4.1 linker had a bug which always looked for a dynamic library
|
||||
# with an extension of .a. AIX4.2 fixed this problem
|
||||
DLL_SUFFIX = a
|
||||
|
||||
OS_LIBS += -lsvld
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
|
||||
#
|
||||
# Config stuff for AIX4.2
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/AIX.mk
|
||||
|
||||
OS_CFLAGS += -DAIX4_2
|
||||
DSO_LDOPTS = -brtl -bM:SRE -bnoentry -bexpall
|
||||
MKSHLIB = $(LD) $(DSO_LDOPTS) -lsvld -L/usr/lpp/xlC/lib -lc -lm
|
||||
|
||||
OS_LIBS += -L/usr/lpp/xlC/lib -lc -lm
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for AIX4.3
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/AIX.mk
|
||||
|
||||
|
||||
ifeq ($(USE_64), 1)
|
||||
# Next line replaced by generic name handling in arch.mk
|
||||
# COMPILER_TAG = _64
|
||||
OS_CFLAGS += -O2 -DAIX_64BIT
|
||||
OBJECT_MODE=64
|
||||
export OBJECT_MODE
|
||||
endif
|
||||
OS_CFLAGS += -DAIX4_3
|
||||
DSO_LDOPTS = -brtl -bM:SRE -bnoentry -bexpall
|
||||
MKSHLIB = $(LD) $(DSO_LDOPTS) -lsvld -L/usr/lpp/xlC/lib -lc -lm
|
||||
|
||||
OS_LIBS += -L/usr/lpp/xlC/lib -lc -lm
|
||||
|
|
@ -0,0 +1,65 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for FreeBSD2
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = gcc
|
||||
CC = gcc
|
||||
CCC = g++
|
||||
RANLIB = ranlib
|
||||
|
||||
OS_REL_CFLAGS = -mno-486 -Di386
|
||||
CPU_ARCH = x86
|
||||
|
||||
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -Wall -pipe -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK
|
||||
|
||||
ifdef USE_PTHREADS
|
||||
OS_LIBS = -lc_r
|
||||
DEFINES += -D_PR_NEED_FAKE_POLL
|
||||
else
|
||||
OS_LIBS = -lc
|
||||
endif
|
||||
|
||||
ARCH = freebsd
|
||||
|
||||
DSO_CFLAGS = -fPIC
|
||||
DSO_LDOPTS = -Bshareable
|
||||
DSO_LDFLAGS =
|
||||
|
||||
MKSHLIB = $(LD) $(DSO_LDOPTS)
|
||||
|
||||
G++INCLUDES = -I/usr/include/g++
|
||||
|
||||
INCLUDES += -I/usr/X11R6/include
|
|
@ -0,0 +1,70 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
|
||||
#
|
||||
# Config stuff for HP-UX
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
CPU_ARCH = hppa
|
||||
DLL_SUFFIX = sl
|
||||
CCC = CC
|
||||
OS_CFLAGS += -Ae $(DSO_CFLAGS) -DHPUX -D$(CPU_ARCH) -D_HPUX_SOURCE
|
||||
|
||||
ifeq ($(DEFAULT_IMPL_STRATEGY),_PTH)
|
||||
USE_PTHREADS = 1
|
||||
ifeq ($(CLASSIC_NSPR),1)
|
||||
USE_PTHREADS =
|
||||
IMPL_STRATEGY = _CLASSIC
|
||||
endif
|
||||
ifeq ($(PTHREADS_USER),1)
|
||||
USE_PTHREADS =
|
||||
IMPL_STRATEGY = _PTH_USER
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef PTHREADS_USER
|
||||
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
|
||||
endif
|
||||
|
||||
MKSHLIB = $(LD) $(DSO_LDOPTS)
|
||||
|
||||
DSO_LDOPTS = -b
|
||||
DSO_LDFLAGS =
|
||||
|
||||
# +Z generates position independent code for use in shared libraries.
|
||||
DSO_CFLAGS = +Z
|
||||
|
||||
HAVE_PURIFY = 1
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
|
||||
#
|
||||
# On HP-UX 9, the default (and only) implementation strategy is
|
||||
# classic nspr.
|
||||
#
|
||||
ifeq ($(OS_RELEASE),A.09.03)
|
||||
DEFAULT_IMPL_STRATEGY = _CLASSIC
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXA.09.03
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXA.09.mk
|
|
@ -0,0 +1,43 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On HP-UX 9, the default (and only) implementation strategy is
|
||||
# classic nspr.
|
||||
#
|
||||
ifeq ($(OS_RELEASE),A.09.07)
|
||||
DEFAULT_IMPL_STRATEGY = _CLASSIC
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXA.09.07
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXA.09.mk
|
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXA.09
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UX.mk
|
||||
|
||||
OS_CFLAGS += -DHPUX9
|
|
@ -0,0 +1,40 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
ifeq ($(OS_RELEASE),B.10.01)
|
||||
DEFAULT_IMPL_STRATEGY = _CLASSIC
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXB.10.01
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
|
|
@ -0,0 +1,50 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On HP-UX 10.10 and 10.20, the default implementation strategy is
|
||||
# pthreads (actually DCE threads). Classic nspr is also available.
|
||||
#
|
||||
|
||||
ifeq ($(OS_RELEASE),B.10.10)
|
||||
DEFAULT_IMPL_STRATEGY = _PTH
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXB.10.10
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
|
||||
|
||||
OS_CFLAGS += -DHPUX10_10
|
||||
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
OS_CFLAGS += -D_REENTRANT -D_PR_DCETHREADS
|
||||
endif
|
|
@ -0,0 +1,50 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On HP-UX 10.10 and 10.20, the default implementation strategy is
|
||||
# pthreads (actually DCE threads). Classic nspr is also available.
|
||||
#
|
||||
|
||||
ifeq ($(OS_RELEASE),B.10.20)
|
||||
DEFAULT_IMPL_STRATEGY = _PTH
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXB.10.20
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
|
||||
|
||||
OS_CFLAGS += -DHPUX10_20
|
||||
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
OS_CFLAGS += -D_REENTRANT -D_PR_DCETHREADS
|
||||
endif
|
|
@ -0,0 +1,56 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On HP-UX 10.30 and 11.00, the default implementation strategy is
|
||||
# pthreads. Classic nspr and pthreads-user are also available.
|
||||
#
|
||||
|
||||
ifeq ($(OS_RELEASE),B.10.30)
|
||||
DEFAULT_IMPL_STRATEGY = _PTH
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXB.10.30.
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
|
||||
|
||||
OS_CFLAGS += -DHPUX10_30
|
||||
|
||||
#
|
||||
# To use the true pthread (kernel thread) library on 10.30 and
|
||||
# 11.00, we should define _POSIX_C_SOURCE to be 199506L.
|
||||
# The _REENTRANT macro is deprecated.
|
||||
#
|
||||
|
||||
ifdef USE_PTHREADS
|
||||
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
|
||||
endif
|
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for HP-UXB.10
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UX.mk
|
||||
|
||||
OS_CFLAGS += -DHPUX10
|
||||
OS_LIBS += -lpthread -lm
|
|
@ -0,0 +1,55 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On HP-UX 10.30 and 11.00, the default implementation strategy is
|
||||
# pthreads. Classic nspr and pthreads-user are also available.
|
||||
#
|
||||
|
||||
ifeq ($(OS_RELEASE),B.11.00)
|
||||
OS_CFLAGS += -DHPUX10
|
||||
DEFAULT_IMPL_STRATEGY = _PTH
|
||||
endif
|
||||
|
||||
#
|
||||
# To use the true pthread (kernel thread) library on 10.30 and
|
||||
# 11.00, we should define _POSIX_C_SOURCE to be 199506L.
|
||||
# The _REENTRANT macro is deprecated.
|
||||
#
|
||||
|
||||
ifdef USE_PTHREADS
|
||||
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for HP-UXB.11.00.
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UXB.11.mk
|
|
@ -0,0 +1,56 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for HP-UXB.11
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/HP-UX.mk
|
||||
|
||||
ifndef NS_USE_GCC
|
||||
CCC = /opt/aCC/bin/aCC -ext
|
||||
ifeq ($(USE_64), 1)
|
||||
OS_CFLAGS += -Aa +e +DA2.0W +DS2.0 +DChpux
|
||||
# Next line replaced by generic name handling in arch.mk
|
||||
# COMPILER_TAG = _64
|
||||
else
|
||||
ifdef USE_LONG_LONGS
|
||||
OS_CFLAGS += -Aa +e +DA2.0 +DS2.0
|
||||
else
|
||||
OS_CFLAGS += +DAportable +DS1.1
|
||||
endif
|
||||
endif
|
||||
else
|
||||
CCC = aCC
|
||||
endif
|
||||
|
||||
OS_CFLAGS += -DHPUX11
|
||||
OS_LIBS += -lpthread -lm -lrt
|
||||
HPUX11 = 1
|
|
@ -0,0 +1,122 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
#
|
||||
# The default implementation strategy for Irix is classic nspr.
|
||||
#
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
ifeq ($(USE_N32),1)
|
||||
IMPL_STRATEGY = _n32_PTH
|
||||
else
|
||||
IMPL_STRATEGY = _PTH
|
||||
endif
|
||||
endif
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
ifdef NS_USE_GCC
|
||||
CC = gcc
|
||||
AS = $(CC) -x assembler-with-cpp
|
||||
ODD_CFLAGS = -Wall -Wno-format
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER = -O6
|
||||
endif
|
||||
else
|
||||
CC = cc
|
||||
CCC = CC
|
||||
ODD_CFLAGS = -fullwarn -xansi
|
||||
ifdef BUILD_OPT
|
||||
ifeq ($(USE_N32),1)
|
||||
OPTIMIZER = -O -OPT:Olimit=4000
|
||||
else
|
||||
OPTIMIZER = -O -Olimit 4000
|
||||
endif
|
||||
endif
|
||||
|
||||
# For 6.x machines, include this flag
|
||||
ifeq (6., $(findstring 6., $(OS_RELEASE)))
|
||||
ifeq ($(USE_N32),1)
|
||||
ODD_CFLAGS += -n32 -mips3 -exceptions
|
||||
else
|
||||
ODD_CFLAGS += -32 -multigot
|
||||
endif
|
||||
else
|
||||
ODD_CFLAGS += -xgot
|
||||
endif
|
||||
ifeq ($(USE_N32),1)
|
||||
OS_CFLAGS += -dollar
|
||||
endif
|
||||
endif
|
||||
|
||||
ODD_CFLAGS += -DSVR4 -DIRIX
|
||||
|
||||
CPU_ARCH = mips
|
||||
|
||||
RANLIB = /bin/true
|
||||
# For purify
|
||||
# NOTE: should always define _SGI_MP_SOURCE
|
||||
NOMD_OS_CFLAGS += $(ODD_CFLAGS) -D_SGI_MP_SOURCE
|
||||
|
||||
ifndef NO_MDUPDATE
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS) -MDupdate $(DEPENDENCIES)
|
||||
else
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS)
|
||||
endif
|
||||
|
||||
ifeq ($(USE_N32),1)
|
||||
SHLIB_LD_OPTS += -n32 -mips3
|
||||
endif
|
||||
|
||||
MKSHLIB += $(LD) $(SHLIB_LD_OPTS) -shared -soname $(@:$(OBJDIR)/%.so=%.so)
|
||||
|
||||
HAVE_PURIFY = 1
|
||||
|
||||
DSO_LDOPTS = -elf -shared -all
|
||||
|
||||
ifdef DSO_BACKEND
|
||||
DSO_LDOPTS += -soname $(DSO_NAME)
|
||||
endif
|
||||
|
||||
#
|
||||
# Revision notes:
|
||||
#
|
||||
# In the IRIX compilers prior to version 7.2, -n32 implied -mips3.
|
||||
# Beginning in the 7.2 compilers, -n32 implies -mips4 when the compiler
|
||||
# is running on a system with a mips4 CPU (e.g. R8K, R10K).
|
||||
# We want our code to explicitly be mips3 code, so we now explicitly
|
||||
# set -mips3 whenever we set -n32.
|
||||
#
|
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 5.2
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/IRIX5.mk
|
|
@ -0,0 +1,37 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 5.3
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/IRIX5.mk
|
||||
|
||||
OS_CFLAGS += -DIRIX5_3
|
|
@ -0,0 +1,40 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 5
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/IRIX.mk
|
||||
|
||||
ifndef NS_USE_GCC
|
||||
ODD_CFLAGS += -xgot
|
||||
endif
|
|
@ -0,0 +1,43 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 6.2
|
||||
#
|
||||
|
||||
|
||||
# catch unresolved symbols
|
||||
|
||||
SHLIB_LD_OPTS += -no_unresolved
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/IRIX6.mk
|
||||
|
||||
OS_CFLAGS += -DIRIX6_2
|
|
@ -0,0 +1,42 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 6.3
|
||||
#
|
||||
|
||||
# catch unresolved symbols
|
||||
|
||||
SHLIB_LD_OPTS += -no_unresolved
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/IRIX6.mk
|
||||
|
||||
OS_CFLAGS += -DIRIX6_3
|
|
@ -0,0 +1,42 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 6.5
|
||||
#
|
||||
|
||||
# catch unresolved symbols
|
||||
|
||||
SHLIB_LD_OPTS += -no_unresolved
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/IRIX6.mk
|
||||
|
||||
OS_CFLAGS += -DIRIX6_5 -mips3
|
|
@ -0,0 +1,47 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for IRIX 6
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/IRIX.mk
|
||||
|
||||
ifndef NS_USE_GCC
|
||||
ifneq ($(USE_N32),1)
|
||||
OS_CFLAGS += -32
|
||||
endif
|
||||
ODD_CFLAGS += -multigot
|
||||
endif
|
||||
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
OS_LIBS += -lpthread
|
||||
endif
|
|
@ -0,0 +1,97 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Linux
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
#
|
||||
# The default implementation strategy for Linux is now pthreads
|
||||
#
|
||||
USE_PTHREADS = 1
|
||||
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
IMPL_STRATEGY = _PTH
|
||||
endif
|
||||
|
||||
CC = gcc
|
||||
CCC = g++
|
||||
RANLIB = ranlib
|
||||
|
||||
DEFAULT_COMPILER = gcc
|
||||
|
||||
ifeq ($(OS_TEST),ppc)
|
||||
OS_REL_CFLAGS = -DMACLINUX -DLINUX1_2
|
||||
CPU_ARCH = ppc
|
||||
else
|
||||
ifeq ($(OS_TEST),alpha)
|
||||
OS_REL_CFLAGS = -D_ALPHA_ -DLINUX1_2 -D_XOPEN_SOURCE
|
||||
CPU_ARCH = alpha
|
||||
else
|
||||
OS_REL_CFLAGS = -mno-486 -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
|
||||
CPU_ARCH = x86
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
LIBC_TAG = _glibc
|
||||
|
||||
ifeq ($(OS_RELEASE),2.0)
|
||||
OS_REL_CFLAGS += -DLINUX2_0
|
||||
MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER = -O2
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
OS_PTHREAD = -lpthread
|
||||
endif
|
||||
|
||||
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -Wall -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR
|
||||
OS_LIBS = -L/lib $(OS_PTHREAD) -ldl -lc
|
||||
|
||||
ifdef USE_PTHREADS
|
||||
DEFINES += -D_REENTRANT -D_PR_NEED_FAKE_POLL
|
||||
else
|
||||
DEFINES += -D_PR_LOCAL_THREADS_ONLY
|
||||
endif
|
||||
|
||||
ARCH = linux
|
||||
|
||||
DSO_CFLAGS = -fPIC
|
||||
DSO_LDOPTS = -shared
|
||||
DSO_LDFLAGS =
|
||||
|
||||
# INCLUDES += -I/usr/include -Y/usr/include/linux
|
||||
G++INCLUDES = -I/usr/include/g++
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Linux 2.1 (ELF)
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/Linux.mk
|
||||
ifeq ($(OS_RELEASE),2.1)
|
||||
OS_REL_CFLAGS += -DLINUX2_1
|
||||
MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER = -O2
|
||||
endif
|
||||
endif
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Linux 2.2 (ELF)
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/Linux.mk
|
||||
|
||||
OS_REL_CFLAGS += -DLINUX2_1
|
||||
MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER = -O2
|
||||
endif
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Linux 1.2 (ELF)
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/Linux.mk
|
|
@ -0,0 +1,36 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Linux 2.0 (ELF)
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/Linux.mk
|
|
@ -0,0 +1,43 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
DEPTH = ..
|
||||
CORE_DEPTH = ..
|
||||
|
||||
MODULE = coreconf
|
||||
|
||||
DIRS = nsinstall mkdepend md
|
||||
|
||||
include $(DEPTH)/coreconf/config.mk
|
||||
include $(DEPTH)/coreconf/rules.mk
|
||||
|
||||
export:: libs
|
|
@ -0,0 +1,90 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for NCR SysVr4 v 3.0
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
###
|
||||
NS_USE_NATIVE = 1
|
||||
|
||||
# NS_USE_GCC = 1
|
||||
|
||||
export PATH:=$(PATH):/opt/ncc/bin
|
||||
###
|
||||
|
||||
RANLIB = true
|
||||
GCC_FLAGS_EXTRA += -pipe
|
||||
|
||||
DEFINES += -DSVR4 -DSYSV -DHAVE_STRERROR -DNCR
|
||||
|
||||
OS_CFLAGS += -Hnocopyr -DSVR4 -DSYSV -DHAVE_STRERROR -DNCR -DPRFSTREAMS_BROKEN
|
||||
|
||||
ifdef NS_USE_NATIVE
|
||||
CC = cc
|
||||
CCC = ncc
|
||||
CXX = ncc
|
||||
# OS_LIBS += -L/opt/ncc/lib
|
||||
else
|
||||
# OS_LIBS +=
|
||||
endif
|
||||
|
||||
#OS_LIBS += -lsocket -lnsl -ldl -lc
|
||||
|
||||
MKSHLIB += $(LD) $(DSO_LDOPTS)
|
||||
#DSO_LDOPTS += -G -z defs
|
||||
DSO_LDOPTS += -G
|
||||
|
||||
CPU_ARCH = x86
|
||||
ARCH = ncr
|
||||
|
||||
NOSUCHFILE = /solaris-rm-f-sucks
|
||||
|
||||
# now take care of default GCC (rus@5/5/97)
|
||||
|
||||
ifdef NS_USE_GCC
|
||||
# if gcc-settings are redefined already - don't touch it
|
||||
#
|
||||
ifeq (,$(findstring gcc, $(CC)))
|
||||
CC = gcc
|
||||
CCC = g++
|
||||
CXX = g++
|
||||
# always use -fPIC - some makefiles are still broken and don't distinguish
|
||||
# situation when they build shared and static libraries
|
||||
CFLAGS += -fPIC -Wall $(GCC_FLAGS_EXTRA)
|
||||
# OS_LIBS += -L/usr/local/lib -lstdc++ -lg++ -lgcc
|
||||
endif
|
||||
endif
|
||||
###
|
|
@ -0,0 +1,61 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for NEC Mips SYSV
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = $(CORE_DEPTH)/build/hcc
|
||||
|
||||
CPU_ARCH = mips
|
||||
|
||||
ifdef NS_USE_GCC
|
||||
CC = gcc
|
||||
CCC = g++
|
||||
else
|
||||
CC = $(CORE_DEPTH)/build/hcc
|
||||
OS_CFLAGS = -Xa -KGnum=0 -KOlimit=4000
|
||||
CCC = g++
|
||||
endif
|
||||
|
||||
MKSHLIB = $(LD) $(DSO_LDOPTS)
|
||||
|
||||
RANLIB = /bin/true
|
||||
|
||||
OS_CFLAGS += $(ODD_CFLAGS) -DSVR4 -D__SVR4 -DNEC -Dnec_ews -DHAVE_STRERROR
|
||||
OS_LIBS = -lsocket -lnsl -ldl $(LDOPTIONS)
|
||||
LDOPTIONS = -lc -L/usr/ucblib -lucb
|
||||
|
||||
NOSUCHFILE = /nec-rm-f-sucks
|
||||
|
||||
DSO_LDOPTS = -G
|
|
@ -0,0 +1,74 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for DEC OSF/1
|
||||
#
|
||||
|
||||
#
|
||||
# The Bourne shell (sh) on OSF1 doesn't handle "set -e" correctly,
|
||||
# which we use to stop LOOP_OVER_DIRS submakes as soon as any
|
||||
# submake fails. So we use the Korn shell instead.
|
||||
#
|
||||
SHELL = /usr/bin/ksh
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
CC = cc
|
||||
OS_CFLAGS += $(NON_LD_FLAGS) -std1
|
||||
CCC = cxx
|
||||
RANLIB = /bin/true
|
||||
CPU_ARCH = alpha
|
||||
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER += -Olimit 4000
|
||||
endif
|
||||
|
||||
NON_LD_FLAGS += -ieee_with_inexact
|
||||
OS_CFLAGS += -DOSF1 -D_REENTRANT
|
||||
|
||||
ifneq ($(USE_64), 1)
|
||||
LDFLAGS += -taso
|
||||
endif
|
||||
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
OS_CFLAGS += -pthread
|
||||
endif
|
||||
|
||||
ifeq ($(USE_IPV6),1)
|
||||
OS_CFLAGS += -D_PR_INET6
|
||||
endif
|
||||
|
||||
# The command to build a shared library on OSF1.
|
||||
MKSHLIB += ld -shared -all -expect_unresolved "*"
|
||||
DSO_LDOPTS += -shared
|
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for DEC OSF/1 V2.0
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/OSF1.mk
|
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for DEC OSF/1 V3.0
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/OSF1.mk
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On OSF1 V3.2, classic nspr is the default (and only) implementation
|
||||
# strategy.
|
||||
#
|
||||
|
||||
#
|
||||
# Config stuff for DEC OSF/1 V3.2
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/OSF1.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),V3.2)
|
||||
OS_CFLAGS += -DOSF1V3
|
||||
endif
|
|
@ -0,0 +1,51 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# On OSF1 V4.0, pthreads is the default implementation strategy.
|
||||
# Classic nspr is also available.
|
||||
#
|
||||
ifneq ($(OS_RELEASE),V3.2)
|
||||
USE_PTHREADS = 1
|
||||
ifeq ($(CLASSIC_NSPR), 1)
|
||||
USE_PTHREADS =
|
||||
IMPL_STRATEGY := _CLASSIC
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Config stuff for DEC OSF/1 V4.0
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/OSF1.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),V4.0)
|
||||
OS_CFLAGS += -DOSF1V4
|
||||
endif
|
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for DEC OSF/1 V4.0B
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/OSF1V4.0.mk
|
|
@ -0,0 +1,39 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for DEC OSF/1 V4.0D
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/OSF1V4.0.mk
|
||||
DEFINES += -DOSF1V4D
|
||||
|
||||
OS_LIBS += -lpthread -lrt
|
||||
|
|
@ -0,0 +1,568 @@
|
|||
OVERVIEW of "ns/coreconf":
|
||||
|
||||
This README file is an attempt to provide the reader with a simple
|
||||
synopsis of the "ns/coreconf" build system which was originally
|
||||
fundamentally designed and built to accomodate Netscape's binary
|
||||
release model. Wherever possible, an attempt has been made to
|
||||
comply with the NSPR 2.0 build system, including mimicing the
|
||||
compiler/linker flags, and directory naming structure. The reader
|
||||
should keep in mind that the system builds binary releases of
|
||||
header files, class files, libraries, and executables on numerous
|
||||
flavors of UNIX and Windows operating systems. Unfortunately,
|
||||
no serious attempt has ever been made to incorporate an ability to
|
||||
generate cross-platform binaries on an Apple MacIntosh platform.
|
||||
|
||||
Note that this file will not attempt to redefine or document the
|
||||
architecture of this system. However, documents on this subject
|
||||
are available at the following URL:
|
||||
|
||||
http://warp/hardcore/prj-ttools/specs/release/index.html
|
||||
|
||||
|
||||
|
||||
DEPENDENCIES of "ns/coreconf":
|
||||
|
||||
The "ns/coreconf" build system requires the specified versions of
|
||||
the following platform-dependent tools:
|
||||
|
||||
UNIX Platforms:
|
||||
--------------
|
||||
gmake (version 3.74 or later)
|
||||
perl 4.0 (NOTE: perl 5.003 or later recommended)
|
||||
uname
|
||||
|
||||
Windows Platforms:
|
||||
-----------------
|
||||
gmake 3.74 (must use hacked Netscape version)
|
||||
shmsdos.exe (contained in Netscape gmake.exe)
|
||||
nsinstall.exe (contained in Netscape gmake.exe)
|
||||
perl.exe (version 4.0 for everything except testing;
|
||||
NOTE: MKS toolkit perl 5.002 is broken)
|
||||
perl5.exe (for testing;
|
||||
NOTE: perl 5.003 or later recommended;
|
||||
MKS toolkit perl 5.002 is broken)
|
||||
uname.exe (use nstools version)
|
||||
|
||||
ENHANCEMENTS to "ns/coreconf":
|
||||
|
||||
With the advent of Certificate Server 4.0 using the ns/coreconf
|
||||
build system, several changes had to be made to enhance
|
||||
ns/coreconf support for building Java/JNI classes/programs, as
|
||||
well as libraries slated to be released as binaries. While the
|
||||
following may not represent an exhaustive list of these changes,
|
||||
it does attempt to be at least somewhat comprehensive:
|
||||
|
||||
(1) During the course of these enhancements, a total of
|
||||
four files have been modified, and four new files have
|
||||
been added.
|
||||
|
||||
The following files have been modified:
|
||||
|
||||
- command.mk: removed old definition of JAR
|
||||
|
||||
- config.mk: added include statement of new
|
||||
"jdk.mk" file
|
||||
|
||||
- ruleset.mk: allowed the $(MKPROG) variable to be
|
||||
overridden by supplying it with a
|
||||
default value of $(CC); augmented
|
||||
numerous definitions to enhance
|
||||
ability of ns/coreconf to produce
|
||||
a more robust set of libraries;
|
||||
added some JNI definitions; PACKAGE
|
||||
definition may be overridden by new
|
||||
"jdk.mk" file
|
||||
|
||||
- rules.mk: separated the compile phase of a
|
||||
program from the link phase of a
|
||||
program such that a developer can
|
||||
now strictly override program linkage
|
||||
by simply supplying a $(MKPROG)
|
||||
variable; augmented NETLIBDEPTH
|
||||
to use CORE_DEPTH but retain backward
|
||||
compatibility; added JNI section;
|
||||
modified .PRECIOUS rule;
|
||||
|
||||
The following files have been added:
|
||||
|
||||
- README: this file; an ASCII-based text
|
||||
document used to summarize the
|
||||
ns/coreconf build system and
|
||||
suitable (paginated) for printing
|
||||
|
||||
- jdk.mk: a file comprising most (if not all)
|
||||
of the default Java related build
|
||||
information; the definitions in this
|
||||
file are only included if NS_USE_JDK
|
||||
has been defined
|
||||
|
||||
- jniregen.pl: a perl script used to create a
|
||||
dependency for when JNI files should
|
||||
be regenerated (based upon any change
|
||||
to the ".class" file from which the
|
||||
".h" file was originally generated)
|
||||
|
||||
- outofdate.pl: a perl script used to create a
|
||||
dependency for when ".class" files
|
||||
should be regenerated (based upon
|
||||
any change to the ".java" file
|
||||
from which the ".class" file was
|
||||
originally generated)
|
||||
|
||||
(2) As stated above, the ns/coreconf build system now separates
|
||||
the link phase of a program from its compilation phase.
|
||||
While ns/coreconf still works exactly as it used to because
|
||||
the $(MKPROG) variable is assigned $(CC) by default, a developer
|
||||
may now override this behavior by simply supplying their
|
||||
own unique value for $(MKPROG) on every platform. This allows
|
||||
a program compiled with $(CC) to link with external libraries
|
||||
that may contain "C++" linkage. Before this change, a
|
||||
programmer would need to reference their own local copy of
|
||||
rules.mk (see the ns/sectools/cmd/pk12util program for
|
||||
an example of how this used to be accomplished).
|
||||
|
||||
(3) Currently, the ns/coreconf build system differs from the
|
||||
NSPR 2.0 build system which utilizes an "_s" to denote
|
||||
static libraries from import libraries. In fact, the
|
||||
ns/coreconf build system adds no prefixes or suffixes to
|
||||
distinguish one version of static libraries from another.
|
||||
Note that both the ns/coreconf build system as well as the
|
||||
NSPR 2.0 build system do nothing to provide a method of
|
||||
distinguishing 16-bit from 32-bit static libraries on the
|
||||
same machine, either, since:
|
||||
|
||||
a) this might only provide difficulty during
|
||||
development, since static libraries always
|
||||
need to be embedded within a program
|
||||
(note this is highly unlikely, since libraries
|
||||
for different platforms are subdivided via
|
||||
a well-known subdirectory structure, and
|
||||
a developer may use multiple trees for
|
||||
development),
|
||||
|
||||
b) this maintains backwards compatibility,
|
||||
something very important since no legacy
|
||||
programs will need to change their link phase, and
|
||||
|
||||
c) Netscape as a company has dropped any plans
|
||||
of future development of 16-bit products.
|
||||
|
||||
(4) Since several members of the Hardcore Security group did
|
||||
not favor NSPR 2.0's solution of adding an "_s" to static
|
||||
libraries on Windows platforms as a method to distinguish
|
||||
them from their import library cousins, a different solution
|
||||
was proposed and has been recently implemented for ns/coreconf:
|
||||
|
||||
- a 16 has been added as a suffix to both dynamic and
|
||||
import libraries built on 16-bit Windows platforms
|
||||
|
||||
- a 32 has been added as a suffix to both dynamic and
|
||||
import libraries built on 32-bit Windows platforms
|
||||
|
||||
Since, the HCL release process currently only contains a
|
||||
single instance of building a dynamic library,
|
||||
ns/security/lib/fortcrypt/fort12.dll, the impact of this
|
||||
change should be relatively small.
|
||||
|
||||
It should be noted that although this would additionally
|
||||
limit the 8.3 namespace on 16-bit platforms, it is highly
|
||||
unlikely that any future development will be performed on
|
||||
this platform.
|
||||
|
||||
(5) The $(LIBRARY_VERSION) tag has been added to all non-static
|
||||
libraries created on UNIX operating systems to alleviate
|
||||
any future confusion for binary releases which utilize this
|
||||
tag. Again, it should be noted that this tag is only
|
||||
utilized on non-static libraries, since more than one
|
||||
version of the library may need to exist simultaneously
|
||||
if multiple products are utilized.
|
||||
|
||||
Currently, only one HCL released library utilizes this tag:
|
||||
|
||||
ns/security/lib/fortcrypt/fort12.a
|
||||
(e. g. - in this library, the tag has been set to '12')
|
||||
|
||||
Again, it should be noted that although this would
|
||||
additionally limit the 8.3 namespace on 16-bit platforms,
|
||||
it is highly unlikely that any future development will be
|
||||
performed on this platform.
|
||||
|
||||
(6) The $(JDK_DEBUG_SUFFIX) extension has been added to all
|
||||
library and program names to support debug versions of
|
||||
Java programs (e. g. - java_g, javac_g, etc).
|
||||
|
||||
Once again, it should be noted that although this would
|
||||
additionally limit the 8.3 namespace on 16-bit platforms,
|
||||
it is highly unlikely that any future Java development
|
||||
will be performed on this platform.
|
||||
|
||||
(7) Most (if not all) default definitions for java have been
|
||||
encapsulated within their own file, jdk.mk, which is
|
||||
always included by default in ns/coreconf/config.mk.
|
||||
However, the definitions within this file are only ever
|
||||
activated if NS_USE_JDK has been set to be 1.
|
||||
|
||||
|
||||
(8) Two perl scripts (jniregen.pl and outofdate.pl) have been
|
||||
added to the system to foster a more robust development
|
||||
environment for composing Java and JNI programs
|
||||
utilizing the ns/coreconf build system. Both of these
|
||||
perl scripts are related to resolving dependencies which
|
||||
can not be accomplished through normal makefile dependencies.
|
||||
|
||||
(9) This file, README, was created in an attempt to allow
|
||||
developers who have familiarity with ns/coreconf a simple
|
||||
roadmap for what has changed, as well as a top-level view of
|
||||
what comprises ns/coreconf. This file was written in
|
||||
ASCII (rather than HTML) primarily to promote simple
|
||||
paginated printing.
|
||||
|
||||
OVERVIEW of "config.mk":
|
||||
|
||||
This file contains the configuration information necessary to
|
||||
build each "Core Components" source module:
|
||||
|
||||
include file name Purpose
|
||||
=================== =======================================
|
||||
arch.mk source and release <architecture> tags
|
||||
|
||||
command.mk default command macros
|
||||
(NOTE: may be overridden in $(OS_CONFIG).mk)
|
||||
|
||||
$(OS_CONFIG).mk <architecture>-specific macros
|
||||
(dependent upon <architecture> tags)
|
||||
|
||||
platform.mk source and release <platform> tags
|
||||
(dependent upon <architecture> tags)
|
||||
|
||||
tree.mk release <tree> tags
|
||||
(dependent upon <architecture> tags)
|
||||
|
||||
module.mk source and release <component> tags
|
||||
(NOTE: A component is also called a module
|
||||
or a subsystem. This file is dependent upon
|
||||
$(MODULE) being defined on the command
|
||||
line, as an environment variable, or in
|
||||
individual makefiles, or more
|
||||
appropriately, manifest.mn)
|
||||
|
||||
version.mk release <version> tags
|
||||
(dependent upon $(MODULE) being defined on
|
||||
the command line, as an environment variable,
|
||||
or in individual makefiles, or more
|
||||
appropriately, manifest.mn)
|
||||
|
||||
location.mk macros to figure out binary code location
|
||||
(dependent upon <platform> tags)
|
||||
|
||||
source.mk <component>-specific source path
|
||||
(dependent upon <user_source_tree>,
|
||||
<source_component>, <version>, and
|
||||
<platform> tags)
|
||||
|
||||
headers.mk include switch for support header files
|
||||
(dependent upon <tree>, <component>, <version>,
|
||||
and <platform> tags)
|
||||
|
||||
prefix.mk compute program prefixes
|
||||
|
||||
suffix.mk compute program suffixes
|
||||
(dependent upon <architecture> tags)
|
||||
|
||||
jdk.mk define JDK
|
||||
(dependent upon <architecture>,
|
||||
<source>, and <suffix> tags)
|
||||
|
||||
ruleset.mk Master "Core Components" rule set
|
||||
(should always be the last file
|
||||
included by config.mk)
|
||||
|
||||
|
||||
|
||||
OVERVIEW of "rules.mk":
|
||||
|
||||
The "rules.mk" file consists of four sections. The first section
|
||||
contains the "master" build rules for all binary releases. While
|
||||
this section can (and should) largely be thought of as "language"
|
||||
independent, it does utilize the "perl" scripting language to
|
||||
perform both the "import" and "release" of binary modules.
|
||||
|
||||
The rules which dwell in this section and their purpose:
|
||||
|
||||
|
||||
CATEGORY/rule:: Purpose
|
||||
=================== =======================================
|
||||
|
||||
GENERAL
|
||||
-------
|
||||
all:: "default" all-encompassing rule which
|
||||
performs "export libs program install"
|
||||
|
||||
export:: recursively copy specified
|
||||
cross-platform header files to the
|
||||
$(SOURCE_XPHEADERS_DIR) directory;
|
||||
recursively copy specified
|
||||
machine-dependent header files to the
|
||||
$(SOURCE_MDHEADERS_DIR) directory;
|
||||
although all rules can be written to
|
||||
repetively "chain" into other sections,
|
||||
this rule is the most commonly used
|
||||
rule to "chain" into other sections
|
||||
such as Java providing a simple
|
||||
mechanism which allows no need for
|
||||
developers to memorize specialized
|
||||
rules
|
||||
|
||||
libs:: recursively build
|
||||
static (archival) $(LIBRARY), shared
|
||||
(dynamic link) $(SHARED_LIBRARY),
|
||||
import $(IMPORT_LIBRARY), and/or
|
||||
"purified" $(PURE_LIBRARY)
|
||||
libraries
|
||||
|
||||
program:: recursively build $(PROGRAM)
|
||||
executable
|
||||
|
||||
install:: recursively copy all libraries to
|
||||
$(SOURCE_LIB_DIR) directory;
|
||||
recursively copy all executables to
|
||||
$(SOURCE_BIN_DIR) directory
|
||||
|
||||
clean:: remove all files specified in the
|
||||
$(ALL_TRASH) variable
|
||||
|
||||
clobber:: synonym for "clean::" rule
|
||||
|
||||
realclean:: remove all files specified by
|
||||
$(wildcard *.OBJ), dist, and in
|
||||
the $(ALL_TRASH) variable
|
||||
|
||||
clobber_all:: synonym for "realclean::" rule
|
||||
|
||||
private_export:: recursively copy specified
|
||||
cross-platform header files to the
|
||||
$(SOURCE_XPPRIVATE_DIR) directory
|
||||
|
||||
|
||||
IMPORT
|
||||
------
|
||||
import:: uses perl script to retrieve specified
|
||||
VERSION of the binary release from
|
||||
$(RELEASE_TREE)
|
||||
|
||||
RELEASE
|
||||
-------
|
||||
release_clean:: remove all files from the
|
||||
$(SOURCE_RELEASE_PREFIX) directory
|
||||
|
||||
release:: place specified VERSION of the
|
||||
binary release in the appropriate
|
||||
$(RELEASE_TREE) directory
|
||||
|
||||
release_export:: recursively copy specified
|
||||
cross-platform header files to the
|
||||
$(SOURCE_XPHEADERS_DIR)/include
|
||||
directory
|
||||
|
||||
release_md:: recursively copy all libraries to
|
||||
$(SOURCE_RELEASE_PREFIX)/
|
||||
$(SOURCE_RELEASE_LIB_DIR) directory;
|
||||
recursively copy all executables to
|
||||
$(SOURCE_RELEASE_PREFIX)/
|
||||
$(SOURCE_RELEASE_BIN_DIR) directory
|
||||
|
||||
release_jars:: use perl script to package appropriate
|
||||
files in the $(XPCLASS_JAR),
|
||||
$(XPHEADER_JAR), $(MDHEADER_JAR), and
|
||||
$(MDBINARY_JAR) jar files
|
||||
|
||||
release_cpdistdir:: use perl script to copy the
|
||||
$(XPCLASS_JAR), $(XPHEADER_JAR),
|
||||
$(MDHEADER_JAR), and $(MDBINARY_JAR)
|
||||
jar files to the specified VERSION
|
||||
of the $(RELEASE_TREE) directory
|
||||
|
||||
|
||||
|
||||
TOOLS and AUTOMATION
|
||||
--------------------
|
||||
platform:: tool used to display the platform name
|
||||
as composed within the "arch.mk" file
|
||||
|
||||
autobuild:: automation rule used by "Bonsai" and
|
||||
"Tinderbox" to automatically generate
|
||||
binary releases on various platforms
|
||||
|
||||
tests:: automation tool used to run the
|
||||
"regress" and "reporter" tools
|
||||
on various regression test suites
|
||||
|
||||
The second section of "rules.mk" primarily contains several
|
||||
"language" dependent build rules for binary releases. These are
|
||||
generally "computed" rules (created on the "fly"), and include
|
||||
rules used by "C", "C++", assembly, the preprocessor, perl, and
|
||||
the shell.
|
||||
|
||||
The rules which dwell in this section and their purpose:
|
||||
|
||||
|
||||
CATEGORY/rule:: Purpose
|
||||
=================== =============================
|
||||
|
||||
LIBRARIES
|
||||
---------
|
||||
$(LIBRARY): build the static library
|
||||
specified by the $(LIBRARY)
|
||||
variable
|
||||
|
||||
$(IMPORT_LIBRARY): build the import library
|
||||
specified by the
|
||||
$(IMPORT_LIBRARY) variable
|
||||
|
||||
$(SHARED_LIBRARY): build the shared
|
||||
(dynamic link) library
|
||||
specified by the
|
||||
$(SHARED_LIBRARY) variable
|
||||
|
||||
$(PURE_LIBRARY): build the "purified" library
|
||||
specified by the
|
||||
$(PURE_LIBRARY) variable
|
||||
|
||||
|
||||
PROGRAMS
|
||||
--------
|
||||
$(PROGRAM): build the binary executable
|
||||
specified by the $(PROGRAM)
|
||||
rule
|
||||
|
||||
$(OBJDIR)/
|
||||
$(PROG_PREFIX)%.pure: build the "purified" binary
|
||||
executable specified by this
|
||||
rule
|
||||
|
||||
|
||||
OBJECTS
|
||||
-------
|
||||
$(OBJDIR)/
|
||||
$(PROG_PREFIX)%$(OBJ_SUFFIX): build the object file
|
||||
associated with the
|
||||
makefile rule dependency:
|
||||
|
||||
%.c = C file
|
||||
%.cpp = C++ file
|
||||
%.cc = C++ file
|
||||
%.s = assembly file
|
||||
%.S = assembly file
|
||||
|
||||
$(OBJDIR)/
|
||||
$(PROG_PREFIX)%: (NOTE: deprecated rule)
|
||||
build the object file
|
||||
associated with the
|
||||
makefile rule dependency:
|
||||
|
||||
%.cpp = C++ file
|
||||
|
||||
MISCELLANEOUS
|
||||
-------------
|
||||
$(DIRS):: specifies a helper method
|
||||
used by $(LOOP_THROUGH_DIRS)
|
||||
to recursively change
|
||||
directories and invoke
|
||||
$(MAKE)
|
||||
|
||||
%.i: build the preprocessor file
|
||||
associated with the
|
||||
makefile rule dependency:
|
||||
|
||||
%.c = C file
|
||||
%.cpp = C++ file
|
||||
|
||||
%: process the specified file
|
||||
using the method associated
|
||||
with the makefile rule
|
||||
dependency:
|
||||
|
||||
%.pl = perl script
|
||||
%.sh = shell script
|
||||
|
||||
alltags: tool used to recursively
|
||||
create a "ctags"-style
|
||||
file for reference
|
||||
|
||||
The third section of "rules.mk' primarily contains several JAVA
|
||||
"language" build rules for binary releases. These are also
|
||||
generally "computed" rules (created on the "fly").
|
||||
|
||||
The rules which dwell in this section and their purpose:
|
||||
|
||||
|
||||
CATEGORY/rule:: Purpose
|
||||
=================== =============================
|
||||
$(JAVA_DESTPATH):: create directory specified
|
||||
as the Java destination path
|
||||
for where classes are
|
||||
deposited
|
||||
|
||||
$(JAVA_DESTPATH)/$(PACKAGE):: create directories specified
|
||||
within the $(PACKAGE)
|
||||
variable
|
||||
|
||||
$(JMCSRCDIR):: create directory specified
|
||||
as the JMC destination path
|
||||
|
||||
$(JRI_HEADER_CFILES): used to generate/regenerate
|
||||
JRI header files for "C"
|
||||
|
||||
$(JRI_STUB_CFILES): used to generate/regenerate
|
||||
JRI stub files for "C"
|
||||
|
||||
$(JNI_HEADERS): used to generate/regenerate
|
||||
JNI header files for "C"
|
||||
|
||||
The fourth section of "rules.mk" primarily contains miscellaneous
|
||||
build rules for binary releases. Many of these rules are here to
|
||||
create new subdirectories, manage dependencies, and/or override
|
||||
standard gmake "Makefile" rules.
|
||||
|
||||
The rules which dwell in this section and their purpose:
|
||||
|
||||
|
||||
CATEGORY/rule:: Purpose
|
||||
=================== =============================
|
||||
|
||||
$(PUBLIC_EXPORT_DIR):: create directory used to
|
||||
house public "C" header files
|
||||
|
||||
$(PRIVATE_EXPORT_DIR):: create directory used to
|
||||
house private "C" header
|
||||
files
|
||||
|
||||
$(SOURCE_XP_DIR)/
|
||||
release/include:: create directory used to
|
||||
house "C" header files
|
||||
contained in a release
|
||||
|
||||
$(MKDEPENDENCIES):: for UNIX systems, create
|
||||
a directory used to house
|
||||
dependencies and utilize
|
||||
the $(MKDEPEND) rule to
|
||||
create them
|
||||
|
||||
$(MKDEPEND):: cd to the dependency
|
||||
directory and create them
|
||||
|
||||
depend:: if $(OBJS) exist, perform the
|
||||
$(MKDEPEND) rule followed by
|
||||
the $(MKDEPENDENCIES) rule
|
||||
|
||||
dependclean:: remove all files contained
|
||||
in the dependency repository
|
||||
|
||||
.DEFAULT: standard gmake rule
|
||||
|
||||
.SUFFIXES: standard gmake rule
|
||||
|
||||
.PRECIOUS: standard gmake rule
|
||||
|
||||
.PHONY: standard gmake rule
|
||||
|
|
@ -0,0 +1,84 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for ReliantUNIX
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
ifdef NS_USE_GCC
|
||||
## gcc-2.7.2 homebrewn
|
||||
CC = gcc
|
||||
CCC = g++
|
||||
AS = $(CC)
|
||||
ASFLAGS += -x assembler-with-cpp
|
||||
LD = gld
|
||||
ODD_CFLAGS = -pipe -Wall -Wno-format
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER += -O6
|
||||
endif
|
||||
MKSHLIB = $(LD)
|
||||
MKSHLIB += -G -h $(@:$(OBJDIR)/%.so=%.so)
|
||||
DSO_LDOPTS += -G -Xlinker -Blargedynsym
|
||||
else
|
||||
## native compiler (CDS++ 1.0)
|
||||
# CC = /usr/bin/cc
|
||||
CC = cc
|
||||
CCC = /usr/bin/CC
|
||||
AS = /usr/bin/cc
|
||||
ODD_CFLAGS =
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER += -O -F Olimit,4000
|
||||
endif
|
||||
MKSHLIB = $(CC)
|
||||
MKSHLIB += -G -h $(@:$(OBJDIR)/%.so=%.so)
|
||||
DSO_LDOPTS += -G -W l,-Blargedynsym
|
||||
endif
|
||||
|
||||
NOSUCHFILE = /sni-rm-f-sucks
|
||||
ODD_CFLAGS += -DSVR4 -DSNI -DRELIANTUNIX
|
||||
CPU_ARCH = mips
|
||||
RANLIB = /bin/true
|
||||
|
||||
# For purify
|
||||
NOMD_OS_CFLAGS += $(ODD_CFLAGS)
|
||||
|
||||
# we do not have -MDupdate ...
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS)
|
||||
OS_LIBS += -lsocket -lnsl -lresolv -lgen -ldl -lc /usr/ucblib/libucb.a
|
||||
HAVE_PURIFY = 0
|
||||
|
||||
ifdef DSO_BACKEND
|
||||
DSO_LDOPTS += -h $(DSO_NAME)
|
||||
endif
|
|
@ -0,0 +1,35 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for ReliantUNIX5.4
|
||||
#
|
||||
include $(CORE_DEPTH)/coreconf/ReliantUNIX.mk
|
|
@ -0,0 +1,36 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SCO OpenServer 5.0 for x86.
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SCO_SV3.2.mk
|
|
@ -0,0 +1,86 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SCO Unix for x86.
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
CC = cc
|
||||
OS_CFLAGS += -b elf -KPIC
|
||||
CCC = g++
|
||||
CCC += -b elf -DPRFSTREAMS_BROKEN -I/usr/local/lib/g++-include
|
||||
# CCC = $(CORE_DEPTH)/build/hcpp
|
||||
# CCC += +.cpp +w
|
||||
RANLIB = /bin/true
|
||||
|
||||
#
|
||||
# -DSCO_PM - Policy Manager AKA: SCO Licensing
|
||||
# -DSCO - Changes to Netscape source (consistent with AIX, LINUX, etc..)
|
||||
# -Dsco - Needed for /usr/include/X11/*
|
||||
#
|
||||
OS_CFLAGS += -DSCO_SV -DSYSV -D_SVID3 -DHAVE_STRERROR -DSW_THREADS -DSCO_PM -DSCO -Dsco
|
||||
#OS_LIBS += -lpmapi -lsocket -lc
|
||||
MKSHLIB = $(LD)
|
||||
MKSHLIB += $(DSO_LDOPTS)
|
||||
XINC = /usr/include/X11
|
||||
MOTIFLIB += -lXm
|
||||
INCLUDES += -I$(XINC)
|
||||
CPU_ARCH = x86
|
||||
GFX_ARCH = x
|
||||
ARCH = sco
|
||||
LOCALE_MAP = $(CORE_DEPTH)/cmd/xfe/intl/sco.lm
|
||||
EN_LOCALE = C
|
||||
DE_LOCALE = de_DE.ISO8859-1
|
||||
FR_LOCALE = fr_FR.ISO8859-1
|
||||
JP_LOCALE = ja
|
||||
SJIS_LOCALE = ja_JP.SJIS
|
||||
KR_LOCALE = ko_KR.EUC
|
||||
CN_LOCALE = zh
|
||||
TW_LOCALE = zh
|
||||
I2_LOCALE = i2
|
||||
LOC_LIB_DIR = /usr/lib/X11
|
||||
NOSUCHFILE = /solaris-rm-f-sucks
|
||||
BSDECHO = /bin/echo
|
||||
|
||||
#
|
||||
# These defines are for building unix plugins
|
||||
#
|
||||
BUILD_UNIX_PLUGINS = 1
|
||||
#DSO_LDOPTS += -b elf -G -z defs
|
||||
DSO_LDOPTS += -b elf -G
|
||||
DSO_LDFLAGS += -nostdlib -L/lib -L/usr/lib -lXm -lXt -lX11 -lgen
|
||||
|
||||
# Used for Java compiler
|
||||
EXPORT_FLAGS += -W l,-Bexport
|
|
@ -0,0 +1,59 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS4.1
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
INCLUDES += -I/usr/dt/include -I/usr/openwin/include -I/home/motif/usr/include
|
||||
|
||||
# SunOS 4 _requires_ that shared libs have a version number.
|
||||
# XXX FIXME: Version number should use NSPR_VERSION_NUMBER?
|
||||
DLL_SUFFIX = so.1.0
|
||||
CC = gcc
|
||||
RANLIB = ranlib
|
||||
CPU_ARCH = sparc
|
||||
|
||||
# Purify doesn't like -MDupdate
|
||||
NOMD_OS_CFLAGS += -Wall -Wno-format -DSUNOS4
|
||||
OS_CFLAGS += $(DSO_CFLAGS) $(NOMD_OS_CFLAGS) -MDupdate $(DEPENDENCIES)
|
||||
MKSHLIB = $(LD)
|
||||
MKSHLIB += $(DSO_LDOPTS)
|
||||
HAVE_PURIFY = 1
|
||||
NOSUCHFILE = /solaris-rm-f-sucks
|
||||
DSO_LDOPTS =
|
||||
|
||||
# -fPIC generates position-independent code for use in a shared library.
|
||||
DSO_CFLAGS += -fPIC
|
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.3
|
||||
#
|
||||
|
||||
SOL_CFLAGS =
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.4
|
||||
#
|
||||
|
||||
SOL_CFLAGS =
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
|
@ -0,0 +1,68 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Solaris 2.4 on x86
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
ifdef NS_USE_GCC
|
||||
CC = gcc
|
||||
OS_CFLAGS += -Wall -Wno-format
|
||||
CCC = g++
|
||||
CCC += -Wall -Wno-format
|
||||
ASFLAGS += -x assembler-with-cpp
|
||||
ifdef NO_MDUPDATE
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS)
|
||||
else
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS) -MDupdate $(DEPENDENCIES)
|
||||
endif
|
||||
else
|
||||
CC = cc
|
||||
CCC = CC
|
||||
ASFLAGS += -Wa,-P
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS)
|
||||
endif
|
||||
|
||||
CPU_ARCH = x86
|
||||
|
||||
MKSHLIB = $(LD)
|
||||
MKSHLIB += $(DSO_LDOPTS)
|
||||
NOSUCHFILE = /solx86-rm-f-sucks
|
||||
RANLIB = echo
|
||||
|
||||
# for purify
|
||||
NOMD_OS_CFLAGS += -DSVR4 -DSYSV -D_REENTRANT -DSOLARIS -D__svr4__ -Di386
|
||||
|
||||
DSO_LDOPTS += -G
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.5.1
|
||||
#
|
||||
|
||||
SOL_CFLAGS += -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),5.5.1)
|
||||
OS_DEFINES += -DSOLARIS2_5
|
||||
endif
|
||||
|
||||
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc
|
|
@ -0,0 +1,45 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Solaris 2.5.1 on x86
|
||||
#
|
||||
|
||||
SOL_CFLAGS = -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
CPU_ARCH = x86
|
||||
OS_DEFINES += -Di386
|
||||
|
||||
ifeq ($(OS_RELEASE),5.5.1_i86pc)
|
||||
OS_DEFINES += -DSOLARIS2_5
|
||||
endif
|
|
@ -0,0 +1,42 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.5
|
||||
#
|
||||
|
||||
SOL_CFLAGS += -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),5.5)
|
||||
OS_DEFINES += -DSOLARIS2_5
|
||||
endif
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.6
|
||||
#
|
||||
|
||||
SOL_CFLAGS += -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),5.6)
|
||||
OS_DEFINES += -DSOLARIS2_6
|
||||
endif
|
||||
|
||||
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc
|
|
@ -0,0 +1,45 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for Solaris 2.6 on x86
|
||||
#
|
||||
|
||||
SOL_CFLAGS = -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
CPU_ARCH = x86
|
||||
OS_DEFINES += -Di386
|
||||
|
||||
ifeq ($(OS_RELEASE),5.6_i86pc)
|
||||
OS_DEFINES += -DSOLARIS2_6
|
||||
endif
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.7
|
||||
#
|
||||
|
||||
SOL_CFLAGS += -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),5.7)
|
||||
OS_DEFINES += -DSOLARIS2_7
|
||||
endif
|
||||
|
||||
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc
|
|
@ -0,0 +1,44 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.8
|
||||
#
|
||||
|
||||
SOL_CFLAGS += -D_SVID_GETTOD
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/SunOS5.mk
|
||||
|
||||
ifeq ($(OS_RELEASE),5.8)
|
||||
OS_DEFINES += -DSOLARIS2_8
|
||||
endif
|
||||
|
||||
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc
|
|
@ -0,0 +1,133 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Config stuff for SunOS5.x
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
ifeq ($(USE_64), 1)
|
||||
ARCHFLAG=-xarch=v9
|
||||
LD=/usr/ccs/bin/ld
|
||||
else
|
||||
ARCHFLAG=-xarch=v8
|
||||
endif
|
||||
|
||||
#
|
||||
# Temporary define for the Client; to be removed when binary release is used
|
||||
#
|
||||
ifdef MOZILLA_CLIENT
|
||||
LOCAL_THREADS_ONLY = 1
|
||||
ifndef NS_USE_NATIVE
|
||||
NS_USE_GCC = 1
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# The default implementation strategy for Solaris is classic nspr.
|
||||
#
|
||||
ifeq ($(USE_PTHREADS),1)
|
||||
IMPL_STRATEGY = _PTH
|
||||
else
|
||||
ifeq ($(LOCAL_THREADS_ONLY),1)
|
||||
IMPL_STRATEGY = _LOCAL
|
||||
DEFINES += -D_PR_LOCAL_THREADS_ONLY
|
||||
else
|
||||
DEFINES += -D_PR_GLOBAL_THREADS_ONLY
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Temporary define for the Client; to be removed when binary release is used
|
||||
#
|
||||
ifdef MOZILLA_CLIENT
|
||||
IMPL_STRATEGY =
|
||||
endif
|
||||
|
||||
DEFAULT_COMPILER = cc
|
||||
|
||||
ifdef NS_USE_GCC
|
||||
CC = gcc
|
||||
OS_CFLAGS += -Wall -Wno-format
|
||||
CCC = g++
|
||||
CCC += -Wall -Wno-format
|
||||
ASFLAGS += -x assembler-with-cpp
|
||||
ifdef NO_MDUPDATE
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS)
|
||||
else
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS) -MDupdate $(DEPENDENCIES)
|
||||
endif
|
||||
else
|
||||
CC = cc
|
||||
CCC = CC
|
||||
ASFLAGS += -Wa,-P
|
||||
OS_CFLAGS += $(NOMD_OS_CFLAGS) $(ARCHFLAG)
|
||||
ifndef BUILD_OPT
|
||||
OS_CFLAGS += -xs
|
||||
# else
|
||||
# OPTIMIZER += -fast
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
INCLUDES += -I/usr/dt/include -I/usr/openwin/include
|
||||
|
||||
RANLIB = echo
|
||||
CPU_ARCH = sparc
|
||||
OS_DEFINES += -DSVR4 -DSYSV -D__svr4 -D__svr4__ -DSOLARIS
|
||||
|
||||
ifneq ($(LOCAL_THREADS_ONLY),1)
|
||||
OS_DEFINES += -D_REENTRANT
|
||||
endif
|
||||
|
||||
# Purify doesn't like -MDupdate
|
||||
NOMD_OS_CFLAGS += $(DSO_CFLAGS) $(OS_DEFINES) $(SOL_CFLAGS)
|
||||
|
||||
MKSHLIB = $(LD)
|
||||
MKSHLIB += $(DSO_LDOPTS)
|
||||
|
||||
# ld options:
|
||||
# -G: produce a shared object
|
||||
# -z defs: no unresolved symbols allowed
|
||||
DSO_LDOPTS += -G
|
||||
|
||||
# -KPIC generates position independent code for use in shared libraries.
|
||||
# (Similarly for -fPIC in case of gcc.)
|
||||
ifdef NS_USE_GCC
|
||||
DSO_CFLAGS += -fPIC
|
||||
else
|
||||
DSO_CFLAGS += -KPIC
|
||||
endif
|
||||
|
||||
HAVE_PURIFY = 1
|
||||
NOSUCHFILE = /solaris-rm-f-sucks
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
XP_DEFINE += -DXP_UNIX
|
||||
LIB_SUFFIX = a
|
||||
DLL_SUFFIX = so
|
||||
AR = ar
|
||||
AR += cr $@
|
||||
LDOPTS += -L$(SOURCE_LIB_DIR)
|
||||
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER += -O
|
||||
DEFINES += -UDEBUG -DNDEBUG
|
||||
else
|
||||
OPTIMIZER += -g
|
||||
DEFINES += -DDEBUG -UNDEBUG -DDEBUG_$(shell whoami)
|
||||
endif
|
||||
|
||||
NSINSTALL_DIR = $(CORE_DEPTH)/coreconf/nsinstall
|
||||
NSINSTALL = $(NSINSTALL_DIR)/$(OBJDIR_NAME)/nsinstall
|
||||
|
||||
MKDEPEND_DIR = $(CORE_DEPTH)/coreconf/mkdepend
|
||||
MKDEPEND = $(MKDEPEND_DIR)/$(OBJDIR_NAME)/mkdepend
|
||||
MKDEPENDENCIES = $(OBJDIR_NAME)/depend.mk
|
||||
|
||||
####################################################################
|
||||
#
|
||||
# One can define the makefile variable NSDISTMODE to control
|
||||
# how files are published to the 'dist' directory. If not
|
||||
# defined, the default is "install using relative symbolic
|
||||
# links". The two possible values are "copy", which copies files
|
||||
# but preserves source mtime, and "absolute_symlink", which
|
||||
# installs using absolute symbolic links. The "absolute_symlink"
|
||||
# option requires NFSPWD.
|
||||
# - THIS IS NOT PART OF THE NEW BINARY RELEASE PLAN for 9/30/97
|
||||
# - WE'RE KEEPING IT ONLY FOR BACKWARDS COMPATIBILITY
|
||||
####################################################################
|
||||
|
||||
ifeq ($(NSDISTMODE),copy)
|
||||
# copy files, but preserve source mtime
|
||||
INSTALL = $(NSINSTALL)
|
||||
INSTALL += -t
|
||||
else
|
||||
ifeq ($(NSDISTMODE),absolute_symlink)
|
||||
# install using absolute symbolic links
|
||||
INSTALL = $(NSINSTALL)
|
||||
INSTALL += -L `$(NFSPWD)`
|
||||
else
|
||||
# install using relative symbolic links
|
||||
INSTALL = $(NSINSTALL)
|
||||
INSTALL += -R
|
||||
endif
|
||||
endif
|
||||
|
||||
define MAKE_OBJDIR
|
||||
if test ! -d $(@D); then rm -rf $(@D); $(NSINSTALL) -D $(@D); fi
|
||||
endef
|
|
@ -0,0 +1,51 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# Config stuff for SCO Unixware 2.1
|
||||
#
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/UNIX.mk
|
||||
|
||||
DEFAULT_COMPILER = $(CORE_DEPTH)/build/hcc
|
||||
|
||||
CC = $(CORE_DEPTH)/build/hcc
|
||||
CCC = $(CORE_DEPTH)/build/hcpp
|
||||
RANLIB = true
|
||||
OS_CFLAGS = -KPIC -DSVR4 -DSYSV -DUNIXWARE
|
||||
MKSHLIB = $(LD)
|
||||
MKSHLIB += $(DSO_LDOPTS)
|
||||
DSO_LDOPTS += -G
|
||||
CPU_ARCH = x86
|
||||
ARCH = sco
|
||||
NOSUCHFILE = /solaris-rm-f-sucks
|
|
@ -0,0 +1,117 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# win16_3.11.mk -- Make configuration for Win16
|
||||
#
|
||||
# This file configures gmake to build the Win16 variant of
|
||||
# NSPR 2.0. This file has the function of two files commonly
|
||||
# used on other platforms, for example: winnt.mk and
|
||||
# winnt4.0.mk. ... The packaging is easier and there is only
|
||||
# one variant of the Win16 target.
|
||||
#
|
||||
# Win16 is built using the Watcom C/C++ version 11.0
|
||||
# compiler. You gotta set up the compiler first.
|
||||
# The Watcom compiler depends on a few environment
|
||||
# variables; these environment variables define where the
|
||||
# compiler components are installed; they must be set before
|
||||
# running the make.
|
||||
#
|
||||
# Notes:
|
||||
# OS_CFLAGS is the command line options for the compiler when
|
||||
# building the .DLL object files.
|
||||
# OS_EXE_CFLAGS is the command line options for the compiler
|
||||
# when building the .EXE object files; this is for the test
|
||||
# programs.
|
||||
# the macro OS_CFLAGS is set to OS_EXE_CFLAGS inside of the
|
||||
# makefile for the pr/tests directory. ... Hack.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# -- configuration -----------------------------------------
|
||||
|
||||
DEFAULT_COMPILER = wcc
|
||||
|
||||
CC = wcc
|
||||
CCC = wcl
|
||||
LINK = wlink
|
||||
AR = wlib
|
||||
AR += -q $@
|
||||
RC = wrc.exe
|
||||
RC += /r /dWIN16=1 /bt=windows
|
||||
RANLIB = echo
|
||||
BSDECHO = echo
|
||||
NSINSTALL_DIR = $(CORE_DEPTH)/coreconf/nsinstall
|
||||
NSINSTALL = nsinstall
|
||||
INSTALL = $(NSINSTALL)
|
||||
MAKE_OBJDIR = mkdir
|
||||
MAKE_OBJDIR += $(OBJDIR)
|
||||
XP_DEFINE += -DXP_PC
|
||||
LIB_SUFFIX = lib
|
||||
DLL_SUFFIX = dll
|
||||
|
||||
ifdef BUILD_OPT
|
||||
OPTIMIZER = -oneatx -oh -oi -ei -3 -fpi87 -fp3
|
||||
else
|
||||
OPTIMIZER += -d2 -hc -DDEBUG
|
||||
# OPTIMIZER += -d2 -hw -DDEBUG
|
||||
# LDFLAGS += -DEBUG -DEBUGTYPE:CV
|
||||
endif
|
||||
|
||||
#
|
||||
# $(CPU_ARCH) has been commented out so that its contents
|
||||
# are not added to the WIN16_?.OBJ names thus expanding
|
||||
# them beyond the 8.3 character limit for this platform.
|
||||
#
|
||||
#CPU_ARCH = x386
|
||||
#
|
||||
# added "-s" to avoid dependency on watcom's libs (e.g. on _STK)
|
||||
# added "-zt3" for compatibility with MSVC's "/Gt3" option
|
||||
#
|
||||
OS_CFLAGS += -ml -3 -bd -zc -zu -bt=windows -s -zt3 -d_X86_ -dWIN16 -d_WINDLL
|
||||
#OS_EXE_CFLAGS += -ml -3 -bt=windows -d_X86_ -dWIN16
|
||||
OS_LIB_FLAGS = -c -iro
|
||||
|
||||
# Name of the binary code directories
|
||||
OS_DLL_OPTION = CASEEXACT
|
||||
OS_DLLFLAGS =
|
||||
OS_LIBS =
|
||||
W16_EXPORTS = #
|
||||
|
||||
#
|
||||
# The following is NOT needed for the NSPR 2.0 library.
|
||||
#
|
||||
|
||||
OS_CFLAGS += -d_WINDOWS -d_MSC_VER=700
|
|
@ -0,0 +1,100 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# Configuration common to all versions of Windows NT
|
||||
# and Windows 95
|
||||
#
|
||||
|
||||
DEFAULT_COMPILER = cl
|
||||
|
||||
CC = cl
|
||||
CCC = cl
|
||||
LINK = link
|
||||
AR = lib
|
||||
AR += -NOLOGO -OUT:"$@"
|
||||
RANLIB = echo
|
||||
BSDECHO = echo
|
||||
|
||||
NSINSTALL_DIR = $(CORE_DEPTH)/coreconf/nsinstall
|
||||
NSINSTALL = nsinstall
|
||||
|
||||
MKDEPEND_DIR = $(CORE_DEPTH)/coreconf/mkdepend
|
||||
MKDEPEND = $(MKDEPEND_DIR)/$(OBJDIR_NAME)/mkdepend.exe
|
||||
# Note: MKDEPENDENCIES __MUST__ be a relative pathname, not absolute.
|
||||
# If it is absolute, gmake will crash unless the named file exists.
|
||||
MKDEPENDENCIES = $(OBJDIR_NAME)/depend.mk
|
||||
|
||||
INSTALL = $(NSINSTALL)
|
||||
MAKE_OBJDIR = mkdir
|
||||
MAKE_OBJDIR += $(OBJDIR)
|
||||
RC = rc.exe
|
||||
GARBAGE += $(OBJDIR)/vc20.pdb $(OBJDIR)/vc40.pdb
|
||||
XP_DEFINE += -DXP_PC
|
||||
LIB_SUFFIX = lib
|
||||
DLL_SUFFIX = dll
|
||||
|
||||
ifdef BUILD_OPT
|
||||
OS_CFLAGS += -MD
|
||||
OPTIMIZER += -O2
|
||||
DEFINES += -UDEBUG -U_DEBUG -DNDEBUG
|
||||
DLLFLAGS += -OUT:"$@"
|
||||
else
|
||||
#
|
||||
# Define USE_DEBUG_RTL if you want to use the debug runtime library
|
||||
# (RTL) in the debug build
|
||||
#
|
||||
ifdef USE_DEBUG_RTL
|
||||
OS_CFLAGS += -MDd
|
||||
else
|
||||
OS_CFLAGS += -MD
|
||||
endif
|
||||
OPTIMIZER += -Od -Z7
|
||||
#OPTIMIZER += -Zi -Fd$(OBJDIR)/ -Od
|
||||
DEFINES += -DDEBUG -D_DEBUG -UNDEBUG -DDEBUG_$(USERNAME)
|
||||
DLLFLAGS += -DEBUG -DEBUGTYPE:CV -OUT:"$@"
|
||||
LDFLAGS += -DEBUG -DEBUGTYPE:CV
|
||||
endif
|
||||
|
||||
DEFINES += -DWIN32
|
||||
|
||||
#
|
||||
# The following is NOT needed for the NSPR 2.0 library.
|
||||
#
|
||||
|
||||
DEFINES += -D_WINDOWS
|
||||
|
||||
# override default, which is ASFLAGS = CFLAGS
|
||||
AS = ml.exe
|
||||
ASFLAGS = -Cp -Sn -Zi -coff $(INCLUDES)
|
||||
|
|
@ -0,0 +1,63 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# Config stuff for WIN95
|
||||
#
|
||||
# This makefile defines the following variables:
|
||||
# CPU_ARCH, OS_CFLAGS, and OS_DLLFLAGS.
|
||||
# PROCESSOR is an internal variable.
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/WIN32.mk
|
||||
|
||||
PROCESSOR := $(shell uname -p)
|
||||
ifeq ($(PROCESSOR), I386)
|
||||
CPU_ARCH = x386
|
||||
OS_CFLAGS += -W3 -nologo -D_X86_
|
||||
else
|
||||
ifeq ($(PROCESSOR), MIPS)
|
||||
CPU_ARCH = MIPS
|
||||
#OS_CFLAGS += -W3 -nologo -D_MIPS_
|
||||
OS_CFLAGS += -W3 -nologo
|
||||
else
|
||||
ifeq ($(PROCESSOR), ALPHA)
|
||||
CPU_ARCH = ALPHA
|
||||
OS_CFLAGS += -W3 -nologo -D_ALPHA_=1
|
||||
else
|
||||
CPU_ARCH = processor_is_undefined
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
OS_DLLFLAGS += -nologo -DLL -SUBSYSTEM:WINDOWS -PDB:NONE
|
||||
DEFINES += -DWIN95
|
|
@ -0,0 +1,70 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# Config stuff for WINNT 3.51
|
||||
#
|
||||
# This makefile defines the following variables:
|
||||
# CPU_ARCH, OS_CFLAGS, and OS_DLLFLAGS.
|
||||
# It has the following internal variables:
|
||||
# OS_PROC_CFLAGS and OS_WIN_CFLAGS.
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/WIN32.mk
|
||||
|
||||
PROCESSOR := $(shell uname -p)
|
||||
ifeq ($(PROCESSOR), I386)
|
||||
CPU_ARCH = x386
|
||||
OS_PROC_CFLAGS += -D_X86_
|
||||
else
|
||||
ifeq ($(PROCESSOR), MIPS)
|
||||
CPU_ARCH = MIPS
|
||||
OS_PROC_CFLAGS += -D_MIPS_
|
||||
else
|
||||
ifeq ($(PROCESSOR), ALPHA)
|
||||
CPU_ARCH = ALPHA
|
||||
OS_PROC_CFLAGS += -D_ALPHA_
|
||||
else
|
||||
CPU_ARCH = processor_is_undefined
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
OS_WIN_CFLAGS += -W3
|
||||
OS_CFLAGS += -nologo $(OS_WIN_CFLAGS) $(OS_PROC_CFLAGS)
|
||||
#OS_DLLFLAGS += -nologo -DLL -PDB:NONE -SUBSYSTEM:WINDOWS
|
||||
OS_DLLFLAGS += -nologo -DLL -PDB:NONE -SUBSYSTEM:WINDOWS
|
||||
#
|
||||
# Win NT needs -GT so that fibers can work
|
||||
#
|
||||
OS_CFLAGS += -GT
|
||||
OS_CFLAGS += -DWINNT
|
|
@ -0,0 +1,69 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# Config stuff for WINNT 4.0
|
||||
#
|
||||
# This makefile defines the following variables:
|
||||
# CPU_ARCH, OS_CFLAGS, and OS_DLLFLAGS.
|
||||
# PROCESSOR is an internal variable.
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/WIN32.mk
|
||||
|
||||
PROCESSOR := $(shell uname -p)
|
||||
ifeq ($(PROCESSOR), I386)
|
||||
CPU_ARCH = x386
|
||||
OS_CFLAGS += -W3 -nologo -D_X86_
|
||||
else
|
||||
ifeq ($(PROCESSOR), MIPS)
|
||||
CPU_ARCH = MIPS
|
||||
#OS_CFLAGS += -W3 -nologo -D_MIPS_
|
||||
OS_CFLAGS += -W3 -nologo
|
||||
else
|
||||
ifeq ($(PROCESSOR), ALPHA)
|
||||
CPU_ARCH = ALPHA
|
||||
OS_CFLAGS += -W3 -nologo -D_ALPHA_=1
|
||||
else
|
||||
CPU_ARCH = processor_is_undefined
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
OS_DLLFLAGS += -nologo -DLL -SUBSYSTEM:WINDOWS -PDB:NONE
|
||||
#
|
||||
# Win NT needs -GT so that fibers can work
|
||||
#
|
||||
OS_CFLAGS += -GT
|
||||
OS_CFLAGS += -DWINNT
|
||||
|
||||
NSPR31_LIB_PREFIX = lib
|
|
@ -0,0 +1,292 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" macros for getting the OS architecture #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Macros for getting the OS architecture
|
||||
#
|
||||
|
||||
ifeq ($(USE_64), 1)
|
||||
64BIT_TAG=_64
|
||||
else
|
||||
64BIT_TAG=
|
||||
endif
|
||||
|
||||
OS_ARCH := $(subst /,_,$(shell uname -s))
|
||||
|
||||
#
|
||||
# Attempt to differentiate between sparc and x86 Solaris
|
||||
#
|
||||
|
||||
OS_TEST := $(shell uname -m)
|
||||
ifeq ($(OS_TEST),i86pc)
|
||||
OS_RELEASE := $(shell uname -r)_$(OS_TEST)
|
||||
else
|
||||
OS_RELEASE := $(shell uname -r)
|
||||
endif
|
||||
|
||||
#
|
||||
# Force the IRIX64 machines to use IRIX.
|
||||
#
|
||||
|
||||
ifeq ($(OS_ARCH),IRIX64)
|
||||
OS_ARCH = IRIX
|
||||
endif
|
||||
|
||||
#
|
||||
# Force the newer BSDI versions to use the old arch name.
|
||||
#
|
||||
|
||||
ifeq ($(OS_ARCH),BSD_OS)
|
||||
OS_ARCH = BSD_386
|
||||
endif
|
||||
|
||||
#
|
||||
# Catch Deterim if SVR4 is NCR or UNIXWARE
|
||||
#
|
||||
|
||||
ifeq ($(OS_ARCH),UNIX_SV)
|
||||
ifneq ($(findstring NCR, $(shell grep NCR /etc/bcheckrc | head -1 )),)
|
||||
OS_ARCH = NCR
|
||||
else
|
||||
# Make UnixWare something human readable
|
||||
OS_ARCH = UNIXWARE
|
||||
endif
|
||||
|
||||
# Get the OS release number, not 4.2
|
||||
OS_RELEASE := $(shell uname -v)
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),UNIX_System_V)
|
||||
OS_ARCH = NEC
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),AIX)
|
||||
OS_RELEASE := $(shell uname -v).$(shell uname -r)
|
||||
endif
|
||||
|
||||
#
|
||||
# Distinguish between OSF1 V4.0B and V4.0D
|
||||
#
|
||||
|
||||
ifeq ($(OS_ARCH)$(OS_RELEASE),OSF1V4.0)
|
||||
OS_VERSION := $(shell uname -v)
|
||||
ifeq ($(OS_VERSION),564)
|
||||
OS_RELEASE := V4.0B
|
||||
endif
|
||||
ifeq ($(OS_VERSION),878)
|
||||
OS_RELEASE := V4.0D
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# SINIX changes name to ReliantUNIX with 5.43
|
||||
#
|
||||
|
||||
ifeq ($(OS_ARCH),ReliantUNIX-N)
|
||||
OS_ARCH = ReliantUNIX
|
||||
OS_RELEASE = 5.4
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),SINIX-N)
|
||||
OS_ARCH = ReliantUNIX
|
||||
OS_RELEASE = 5.4
|
||||
endif
|
||||
|
||||
#
|
||||
# Handle FreeBSD 2.2-STABLE and Linux 2.0.30-osfmach3
|
||||
#
|
||||
|
||||
ifeq (,$(filter-out Linux FreeBSD,$(OS_ARCH)))
|
||||
OS_RELEASE := $(shell echo $(OS_RELEASE) | sed 's/-.*//')
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),Linux)
|
||||
OS_RELEASE := $(basename $(OS_RELEASE))
|
||||
endif
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" macros for getting the OS target #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Note: OS_TARGET should be specified on the command line for gmake.
|
||||
# When OS_TARGET=WIN95 is specified, then a Windows 95 target is built.
|
||||
# The difference between the Win95 target and the WinNT target is that
|
||||
# the WinNT target uses Windows NT specific features not available
|
||||
# in Windows 95. The Win95 target will run on Windows NT, but (supposedly)
|
||||
# at lesser performance (the Win95 target uses threads; the WinNT target
|
||||
# uses fibers).
|
||||
#
|
||||
# When OS_TARGET=WIN16 is specified, then a Windows 3.11 (16bit) target
|
||||
# is built. See: win16_3.11.mk for lots more about the Win16 target.
|
||||
#
|
||||
# If OS_TARGET is not specified, it defaults to $(OS_ARCH), i.e., no
|
||||
# cross-compilation.
|
||||
#
|
||||
|
||||
#
|
||||
# The following hack allows one to build on a WIN95 machine (as if
|
||||
# s/he were cross-compiling on a WINNT host for a WIN95 target).
|
||||
# It also accomodates for MKS's uname.exe. If you never intend
|
||||
# to do development on a WIN95 machine, you don't need this. It doesn't
|
||||
# work any more anyway.
|
||||
#
|
||||
ifeq ($(OS_ARCH),WIN95)
|
||||
OS_ARCH = WINNT
|
||||
OS_TARGET = WIN95
|
||||
endif
|
||||
ifeq ($(OS_ARCH),Windows_95)
|
||||
OS_ARCH = Windows_NT
|
||||
OS_TARGET = WIN95
|
||||
endif
|
||||
|
||||
#
|
||||
# On WIN32, we also define the variable CPU_ARCH.
|
||||
#
|
||||
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
CPU_ARCH := $(shell uname -p)
|
||||
ifeq ($(CPU_ARCH),I386)
|
||||
CPU_ARCH = x386
|
||||
endif
|
||||
else
|
||||
#
|
||||
# If uname -s returns "Windows_NT", we assume that we are using
|
||||
# the uname.exe in MKS toolkit.
|
||||
#
|
||||
# The -r option of MKS uname only returns the major version number.
|
||||
# So we need to use its -v option to get the minor version number.
|
||||
# Moreover, it doesn't have the -p option, so we need to use uname -m.
|
||||
#
|
||||
ifeq ($(OS_ARCH), Windows_NT)
|
||||
OS_ARCH = WINNT
|
||||
OS_MINOR_RELEASE := $(shell uname -v)
|
||||
ifeq ($(OS_MINOR_RELEASE),00)
|
||||
OS_MINOR_RELEASE = 0
|
||||
endif
|
||||
OS_RELEASE = $(OS_RELEASE).$(OS_MINOR_RELEASE)
|
||||
CPU_ARCH := $(shell uname -m)
|
||||
#
|
||||
# MKS's uname -m returns "586" on a Pentium machine.
|
||||
#
|
||||
ifneq (,$(findstring 86,$(CPU_ARCH)))
|
||||
CPU_ARCH = x386
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef OS_TARGET
|
||||
OS_TARGET = $(OS_ARCH)
|
||||
endif
|
||||
|
||||
ifeq ($(OS_TARGET), WIN95)
|
||||
OS_RELEASE = 4.0
|
||||
endif
|
||||
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
OS_RELEASE =
|
||||
# OS_RELEASE = _3.11
|
||||
endif
|
||||
|
||||
#
|
||||
# This variable is used to get OS_CONFIG.mk.
|
||||
#
|
||||
|
||||
OS_CONFIG = $(OS_TARGET)$(OS_RELEASE)
|
||||
|
||||
#
|
||||
# OBJDIR_TAG depends on the predefined variable BUILD_OPT,
|
||||
# to distinguish between debug and release builds.
|
||||
#
|
||||
|
||||
ifdef BUILD_OPT
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
OBJDIR_TAG = _O
|
||||
else
|
||||
OBJDIR_TAG = $(64BIT_TAG)_OPT
|
||||
endif
|
||||
else
|
||||
ifdef BUILD_IDG
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
OBJDIR_TAG = _I
|
||||
else
|
||||
OBJDIR_TAG = $(64BIT_TAG)_IDG
|
||||
endif
|
||||
else
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
OBJDIR_TAG = _D
|
||||
else
|
||||
OBJDIR_TAG = $(64BIT_TAG)_DBG
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# The following flags are defined in the individual $(OS_CONFIG).mk
|
||||
# files.
|
||||
#
|
||||
# CPU_TAG is defined if the CPU is not the most common CPU.
|
||||
# COMPILER_TAG is defined if the compiler is not the native compiler.
|
||||
# IMPL_STRATEGY may be defined too.
|
||||
#
|
||||
|
||||
# Name of the binary code directories
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ifeq ($(CPU_ARCH),x386)
|
||||
OBJDIR_NAME = $(OS_CONFIG)$(OBJDIR_TAG).OBJ
|
||||
else
|
||||
OBJDIR_NAME = $(OS_CONFIG)$(CPU_ARCH)$(OBJDIR_TAG).OBJ
|
||||
endif
|
||||
else
|
||||
endif
|
||||
|
||||
OBJDIR_NAME = $(OS_CONFIG)$(CPU_TAG)$(COMPILER_TAG)$(LIBC_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG).OBJ
|
||||
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ifneq ($(OS_TARGET),WIN16)
|
||||
ifndef BUILD_OPT
|
||||
#
|
||||
# Define USE_DEBUG_RTL if you want to use the debug runtime library
|
||||
# (RTL) in the debug build
|
||||
#
|
||||
ifdef USE_DEBUG_RTL
|
||||
OBJDIR_NAME = $(OS_CONFIG)$(CPU_TAG)$(COMPILER_TAG)$(IMPL_STRATEGY)$(OBJDIR_TAG).OBJD
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
|
@ -0,0 +1,55 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" default command macros; #
|
||||
# can be overridden in <arch>.mk #
|
||||
#######################################################################
|
||||
|
||||
AS = $(CC)
|
||||
ASFLAGS += $(CFLAGS)
|
||||
CCF = $(CC) $(CFLAGS)
|
||||
PURIFY = purify $(PURIFYOPTIONS)
|
||||
LINK_DLL = $(LINK) $(OS_DLLFLAGS) $(DLLFLAGS)
|
||||
LINK_EXE = $(LINK) $(OS_LFLAGS) $(LFLAGS)
|
||||
NFSPWD = $(NSINSTALL_DIR)/nfspwd
|
||||
CFLAGS += $(OPTIMIZER) $(OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \
|
||||
$(XCFLAGS)
|
||||
RANLIB = echo
|
||||
TAR = /bin/tar
|
||||
#
|
||||
# For purify
|
||||
#
|
||||
NOMD_CFLAGS += $(OPTIMIZER) $(NOMD_OS_CFLAGS) $(XP_DEFINE) $(DEFINES) $(INCLUDES) \
|
||||
$(XCFLAGS)
|
||||
|
|
@ -0,0 +1,142 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
# Configuration information for building in the "Core Components" source module
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# [1.0] Master "Core Components" source and release <architecture> #
|
||||
# tags #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/arch.mk
|
||||
|
||||
#######################################################################
|
||||
# [2.0] Master "Core Components" default command macros #
|
||||
# (NOTE: may be overridden in $(OS_CONFIG).mk) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/command.mk
|
||||
|
||||
#######################################################################
|
||||
# [3.0] Master "Core Components" <architecture>-specific macros #
|
||||
# (dependent upon <architecture> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/$(OS_CONFIG).mk
|
||||
|
||||
#######################################################################
|
||||
# [4.0] Master "Core Components" source and release <platform> tags #
|
||||
# (dependent upon <architecture> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/platform.mk
|
||||
|
||||
#######################################################################
|
||||
# [5.0] Master "Core Components" release <tree> tags #
|
||||
# (dependent upon <architecture> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/tree.mk
|
||||
|
||||
#######################################################################
|
||||
# [6.0] Master "Core Components" source and release <component> tags #
|
||||
# NOTE: A component is also called a module or a subsystem. #
|
||||
# (dependent upon $(MODULE) being defined on the #
|
||||
# command line, as an environment variable, or in individual #
|
||||
# makefiles, or more appropriately, manifest.mn) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/module.mk
|
||||
|
||||
#######################################################################
|
||||
# [7.0] Master "Core Components" release <version> tags #
|
||||
# (dependent upon $(MODULE) being defined on the #
|
||||
# command line, as an environment variable, or in individual #
|
||||
# makefiles, or more appropriately, manifest.mn) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/version.mk
|
||||
|
||||
#######################################################################
|
||||
# [8.0] Master "Core Components" macros to figure out #
|
||||
# binary code location #
|
||||
# (dependent upon <platform> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/location.mk
|
||||
|
||||
#######################################################################
|
||||
# [9.0] Master "Core Components" <component>-specific source path #
|
||||
# (dependent upon <user_source_tree>, <source_component>, #
|
||||
# <version>, and <platform> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/source.mk
|
||||
|
||||
#######################################################################
|
||||
# [10.0] Master "Core Components" include switch for support header #
|
||||
# files #
|
||||
# (dependent upon <tree>, <component>, <version>, #
|
||||
# and <platform> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/headers.mk
|
||||
|
||||
#######################################################################
|
||||
# [11.0] Master "Core Components" for computing program prefixes #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/prefix.mk
|
||||
|
||||
#######################################################################
|
||||
# [12.0] Master "Core Components" for computing program suffixes #
|
||||
# (dependent upon <architecture> tags) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/suffix.mk
|
||||
|
||||
#######################################################################
|
||||
# [13.0] Master "Core Components" for defining JDK #
|
||||
# (dependent upon <architecture>, <source>, and <suffix> tags)#
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/jdk.mk
|
||||
|
||||
#######################################################################
|
||||
# [14.0] Master "Core Components" rule set #
|
||||
# (should always be the last file included by config.mk) #
|
||||
#######################################################################
|
||||
|
||||
include $(CORE_DEPTH)/coreconf/ruleset.mk
|
||||
-include $(MKDEPENDENCIES)
|
||||
|
|
@ -0,0 +1,156 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
sub recursive_copy {
|
||||
local($fromdir);
|
||||
local($todir);
|
||||
local(@dirlist);
|
||||
$fromdir = shift;
|
||||
$todir = shift;
|
||||
|
||||
print STDERR "recursive copy called with $fromdir, $todir\n";
|
||||
|
||||
#remove any trailing slashes.
|
||||
$fromdir =~ s/\/$//;
|
||||
$todir =~ s/\/$//;
|
||||
|
||||
opendir(DIR, $fromdir);
|
||||
@dirlist = readdir DIR;
|
||||
close DIR;
|
||||
|
||||
|
||||
foreach $file (@dirlist) {
|
||||
if (! (($file eq "." ) || ($file eq "..") )) {
|
||||
|
||||
if (-d "$fromdir/$file") {
|
||||
print STDERR "handling directory $todir/$file\n";
|
||||
&rec_mkdir("$todir/$file");
|
||||
&recursive_copy("$fromdir/$file","$todir/$file");
|
||||
}
|
||||
else {
|
||||
print STDERR "handling file $fromdir/$file\n";
|
||||
&my_copy("$fromdir/$file","$todir/$file");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
sub parse_argv {
|
||||
|
||||
# print STDERR "Parsing Variables\n";
|
||||
|
||||
foreach $q ( @ARGV ) {
|
||||
if (! ($q =~ /=/)) {
|
||||
$var{$lastassigned} .= " $q";
|
||||
}
|
||||
else {
|
||||
$q =~ /^([^=]*)=(.*)/;
|
||||
$left = $1;
|
||||
$right = $2;
|
||||
|
||||
$right =~ s/ *$//;
|
||||
$var{$left} = $right;
|
||||
|
||||
$lastassigned = $left;
|
||||
|
||||
}
|
||||
print STDERR "Assigned $lastassigned = $var{$lastassigned}\n";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# usage: &my_copy("dir/fromfile","dir2/tofile");
|
||||
# do a 'copy' - files only, 'to' MUST be a filename, not a directory.
|
||||
|
||||
# fix this to be able to use copy on win nt.
|
||||
|
||||
sub my_copy {
|
||||
local($from);
|
||||
local($to);
|
||||
local($cpcmd);
|
||||
|
||||
$from = shift;
|
||||
$to = shift;
|
||||
|
||||
if ( ! defined $var{OS_ARCH}) {
|
||||
die "OS_ARCH not defined!";
|
||||
}
|
||||
else {
|
||||
if ($var{OS_ARCH} eq 'WINNT') {
|
||||
$cpcmd = 'cp';
|
||||
}
|
||||
else {
|
||||
$cpcmd = 'cp';
|
||||
}
|
||||
print STDERR "COPYING: $cpcmd $from $to\n";
|
||||
system("$cpcmd $from $to");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub old_my_copy {
|
||||
local($from);
|
||||
local($to);
|
||||
|
||||
$from = shift;
|
||||
$to = shift;
|
||||
open(FIN, "<$from") || die("Can't read from file $from\n");
|
||||
if ( ! open(FOUT,">$to")) {
|
||||
close FIN;
|
||||
die "Can't write to file $to\n";
|
||||
}
|
||||
while (read(FIN, $buf, 100000)) {
|
||||
print FOUT $buf;
|
||||
}
|
||||
close (FIN);
|
||||
close (FOUT);
|
||||
}
|
||||
|
||||
sub rec_mkdir {
|
||||
local($arg);
|
||||
local($t);
|
||||
local($q);
|
||||
|
||||
$arg = shift;
|
||||
$t = "";
|
||||
foreach $q (split(/\//,$arg)) {
|
||||
$t .= $q;
|
||||
if (! ($t =~ /\.\.$/)) {
|
||||
if ($t =~ /./) {
|
||||
mkdir($t,0775);
|
||||
}
|
||||
}
|
||||
$t.= '/';
|
||||
}
|
||||
}
|
||||
|
||||
1;
|
|
@ -0,0 +1,195 @@
|
|||
#! /usr/local/bin/perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
require('coreconf.pl');
|
||||
|
||||
#######-- read in variables on command line into %var
|
||||
|
||||
&parse_argv;
|
||||
|
||||
### do the copy
|
||||
|
||||
print STDERR "RELEASE TREE / MODULE = $var{RELEASE_TREE} $var{MODULE}\n";
|
||||
|
||||
|
||||
|
||||
# 1
|
||||
if ($var{RELEASE} eq "") { exit; } # Can't do release here, so exit.
|
||||
|
||||
# 2
|
||||
#if (! ($var{RELEASE} =~ /\//)) { # if no specific version is specified in RELEASE variable
|
||||
# $component = $var{RELEASE};
|
||||
#}
|
||||
#else { # if a subcomponent/version is given in the RELEASE variable
|
||||
# $var{RELEASE} =~ m|^([^/]*)/|;
|
||||
# $component = $1; # everything before the first slash;
|
||||
# }
|
||||
|
||||
# 3
|
||||
$path = $var{RELEASE};
|
||||
|
||||
|
||||
# 4
|
||||
# find out what directory we would create for 'today'
|
||||
|
||||
$year = (localtime)[5] + 1900;
|
||||
$month = (localtime)[4] + 1;
|
||||
$day = (localtime)[3];
|
||||
$today = sprintf( "%d%02d%02d", $year, $month, $day );
|
||||
|
||||
# 5
|
||||
# if version is null, then set the version to today.
|
||||
if ($var{"RELEASE_VERSION"} eq "") {
|
||||
$var{"RELEASE_VERSION"} = $today;
|
||||
}
|
||||
|
||||
#6
|
||||
$version = $var{"RELEASE_VERSION"}; # set RELEASE_VERSION to passed in variable
|
||||
|
||||
#7
|
||||
# if version is today, then we will want to make a 'current' link.
|
||||
|
||||
if ($version eq $today) {
|
||||
$create_current = 1;
|
||||
}
|
||||
|
||||
#8
|
||||
# version can be a) passed in value from command line, b) value in manifest.mn
|
||||
# or c) computed value such as '19970909'
|
||||
|
||||
|
||||
$dir = "$var{'RELEASE_TREE'}/$path";
|
||||
|
||||
#9
|
||||
if (! (-e "$dir/$version" && -d "$dir/$version")) {
|
||||
print "making dir $dir \n";
|
||||
&rec_mkdir("$dir/$version");
|
||||
}
|
||||
|
||||
|
||||
|
||||
print "version = $version\n";
|
||||
print "path = $path\n";
|
||||
print "var{release_tree} = $var{'RELEASE_TREE'}\n";
|
||||
print "dir = $dir = RELEASE_TREE/path\n";
|
||||
|
||||
|
||||
#10
|
||||
if ($create_current == 1) {
|
||||
|
||||
# unlinking and linking always occurs, even if the link is correct
|
||||
print "unlinking $dir/current\n";
|
||||
unlink("$dir/current");
|
||||
|
||||
print "putting version number $today into 'current' file..";
|
||||
|
||||
open(FILE,">$dir/current") || die " couldn't open current\n";
|
||||
print FILE "$today\n";
|
||||
close(FILE);
|
||||
print " ..done\n"
|
||||
|
||||
}
|
||||
|
||||
&rec_mkdir("$dir/$version/$var{'RELEASE_MD_DIR'}");
|
||||
&rec_mkdir("$dir/$version/$var{'RELEASE_XP_DIR'}");
|
||||
|
||||
|
||||
|
||||
|
||||
foreach $jarfile (split(/ /,$var{FILES}) ) {
|
||||
print STDERR "---------------------------------------------\n";
|
||||
|
||||
$jarinfo = $var{$jarfile};
|
||||
|
||||
($jardir,$jaropts) = split(/\|/,$jarinfo);
|
||||
|
||||
if ($jaropts =~ /f/) {
|
||||
print STDERR "Copying files $jardir....\n";
|
||||
}
|
||||
else {
|
||||
print STDERR "Copying jar file $jarfile....\n";
|
||||
}
|
||||
|
||||
print "jaropts = $jaropts\n";
|
||||
|
||||
if ($jaropts =~ /m/) {
|
||||
$destdir = $var{"RELEASE_MD_DIR"};
|
||||
print "found m, using MD dir $destdir\n";
|
||||
}
|
||||
elsif ($jaropts =~ /x/) {
|
||||
$destdir = $var{"RELEASE_XP_DIR"};
|
||||
print "found x, using XP dir $destdir\n";
|
||||
}
|
||||
else {
|
||||
die "Error: must specify m or x in jar options in $jarinfo line\n";
|
||||
}
|
||||
|
||||
|
||||
$distdir = "$dir/$version/$destdir";
|
||||
|
||||
|
||||
|
||||
if ($jaropts =~ /f/) {
|
||||
|
||||
print "splitting: \"$jardir\"\n";
|
||||
for $srcfile (split(/ /,$jardir)) {
|
||||
|
||||
#if srcfile has a slash
|
||||
if ($srcfile =~ m|/|) {
|
||||
#pull out everything before the last slash into $1
|
||||
$srcfile =~ m|(.*)/|;
|
||||
$distsubdir = "/$1";
|
||||
print "making dir $distdir$distsubdir\n";
|
||||
&rec_mkdir("$distdir$distsubdir");
|
||||
}
|
||||
print "copy: from $srcfile\n";
|
||||
print " to $distdir$distsubdir\n";
|
||||
$srcprefix = "";
|
||||
if ($jaropts =~/m/) {
|
||||
$srcprefix = "$var{'PLATFORM'}/";
|
||||
}
|
||||
system("cp $srcprefix$srcfile $distdir$distsubdir");
|
||||
}
|
||||
}
|
||||
else {
|
||||
$srcfile = "$var{SOURCE_RELEASE_PREFIX}/$jardir/$jarfile";
|
||||
|
||||
print "copy: from $srcfile\n";
|
||||
print " to $distdir\n";
|
||||
|
||||
system("cp $srcfile $distdir");
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,54 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" include switch for support header files #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Always append source-side machine-dependent (md) and cross-platform
|
||||
# (xp) include paths
|
||||
#
|
||||
|
||||
INCLUDES += -I$(SOURCE_MDHEADERS_DIR)
|
||||
|
||||
ifneq ($(OS_TARGET),WIN16)
|
||||
INCLUDES += -I$(SOURCE_XPHEADERS_DIR)
|
||||
endif
|
||||
|
||||
#
|
||||
# Only append source-side private cross-platform include paths for
|
||||
# sectools
|
||||
#
|
||||
|
||||
INCLUDES += -I$(SOURCE_XPPRIVATE_DIR)
|
|
@ -0,0 +1,218 @@
|
|||
#! /usr/local/bin/perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
print STDERR "import.pl\n";
|
||||
|
||||
require('coreconf.pl');
|
||||
|
||||
|
||||
$returncode =0;
|
||||
|
||||
|
||||
#######-- read in variables on command line into %var
|
||||
|
||||
$var{ZIP} = "zip";
|
||||
$var{UNZIP} = "unzip -o";
|
||||
|
||||
&parse_argv;
|
||||
|
||||
if (! ($var{IMPORTS} =~ /\w/)) {
|
||||
print STDERR "nothing to import\n";
|
||||
}
|
||||
|
||||
######-- Do the import!
|
||||
|
||||
foreach $import (split(/ /,$var{IMPORTS}) ) {
|
||||
|
||||
print STDERR "\n\nIMPORTING .... $import\n-----------------------------\n";
|
||||
|
||||
|
||||
# if a specific version specified in IMPORT variable
|
||||
# (if $import has a slash in it)
|
||||
|
||||
if ($import =~ /\//) {
|
||||
# $component=everything before the first slash of $import
|
||||
|
||||
$import =~ m|^([^/]*)/|;
|
||||
$component = $1;
|
||||
|
||||
$import =~ m|^(.*)/([^/]*)$|;
|
||||
|
||||
# $path=everything before the last slash of $import
|
||||
$path = $1;
|
||||
|
||||
# $version=everything after the last slash of $import
|
||||
$version = $2;
|
||||
|
||||
if ($var{VERSION} ne "current") {
|
||||
$version = $var{VERSION};
|
||||
}
|
||||
}
|
||||
else {
|
||||
$component = $import;
|
||||
$path = $import;
|
||||
$version = $var{VERSION};
|
||||
}
|
||||
|
||||
$releasejardir = "$var{RELEASE_TREE}/$path";
|
||||
if ($version eq "current") {
|
||||
print STDERR "Current version specified. Reading 'current' file ... \n";
|
||||
|
||||
open(CURRENT,"$releasejardir/current") || die "NO CURRENT FILE\n";
|
||||
$version = <CURRENT>;
|
||||
$version =~ s/(\r?\n)*$//; # remove any trailing [CR/]LF's
|
||||
close(CURRENT);
|
||||
print STDERR "Using version $version\n";
|
||||
if ( $version eq "") {
|
||||
die "Current version file empty. Stopping\n";
|
||||
}
|
||||
}
|
||||
|
||||
$releasejardir = "$releasejardir/$version";
|
||||
if ( ! -d $releasejardir) {
|
||||
die "$releasejardir doesn't exist (Invalid Version?)\n";
|
||||
}
|
||||
foreach $jarfile (split(/ /,$var{FILES})) {
|
||||
|
||||
($relpath,$distpath,$options) = split(/\|/, $var{$jarfile});
|
||||
|
||||
if ($var{'OVERRIDE_IMPORT_CHECK'} eq 'YES') {
|
||||
$options =~ s/v//g;
|
||||
}
|
||||
|
||||
if ( $relpath ne "") { $releasejarpathname = "$releasejardir/$relpath";}
|
||||
else { $releasejarpathname = $releasejardir; }
|
||||
|
||||
# If a component doesn't have IDG versions, import the DBG ones
|
||||
if( ! -e "$releasejarpathname/$jarfile" ) {
|
||||
if( $relpath =~ /IDG\.OBJ$/ ) {
|
||||
$relpath =~ s/IDG.OBJ/DBG.OBJ/;
|
||||
$releasejarpathname = "$releasejardir/$relpath";
|
||||
} elsif( $relpath =~ /IDG\.OBJD$/ ) {
|
||||
$relpath =~ s/IDG.OBJD/DBG.OBJD/;
|
||||
$releasejarpathname = "$releasejardir/$relpath";
|
||||
}
|
||||
}
|
||||
|
||||
if (-e "$releasejarpathname/$jarfile") {
|
||||
print STDERR "\nWorking on jarfile: $jarfile\n";
|
||||
|
||||
if ($distpath =~ m|/$|) {
|
||||
$distpathname = "$distpath$component";
|
||||
}
|
||||
else {
|
||||
$distpathname = "$distpath";
|
||||
}
|
||||
|
||||
|
||||
#the block below is used to determine whether or not the xp headers have
|
||||
#already been imported for this component
|
||||
|
||||
$doimport = 1;
|
||||
if ($options =~ /v/) { # if we should check the imported version
|
||||
print STDERR "Checking if version file exists $distpathname/version\n";
|
||||
if (-e "$distpathname/version") {
|
||||
open( VFILE, "<$distpathname/version") ||
|
||||
die "Cannot open $distpathname/version for reading. Permissions?\n";
|
||||
$importversion = <VFILE>;
|
||||
close (VFILE);
|
||||
$importversion =~ s/\r?\n$//; # Strip off any trailing CR/LF
|
||||
if ($version eq $importversion) {
|
||||
print STDERR "$distpathname version '$importversion' already imported. Skipping...\n";
|
||||
$doimport =0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ($doimport == 1) {
|
||||
if (! -d "$distpathname") {
|
||||
&rec_mkdir("$distpathname");
|
||||
}
|
||||
# delete the stuff in there already.
|
||||
# (this should really be recursive delete.)
|
||||
|
||||
if ($options =~ /v/) {
|
||||
$remheader = "\nREMOVING files in '$distpathname/' :";
|
||||
opendir(DIR,"$distpathname") ||
|
||||
die ("Cannot read directory $distpathname\n");
|
||||
@filelist = readdir(DIR);
|
||||
closedir(DIR);
|
||||
foreach $file ( @filelist ) {
|
||||
if (! ($file =~ m!/.?.$!) ) {
|
||||
if (! (-d $file)) {
|
||||
$file =~ m!([^/]*)$!;
|
||||
print STDERR "$remheader $1";
|
||||
$remheader = " ";
|
||||
unlink "$distpathname/$file";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
print STDERR "\n\n";
|
||||
|
||||
print STDERR "\nExtracting jarfile '$jarfile' to local directory $distpathname/\n";
|
||||
|
||||
print STDERR "$var{UNZIP} $releasejarpathname/$jarfile -d $distpathname\n";
|
||||
system("$var{UNZIP} $releasejarpathname/$jarfile -d $distpathname");
|
||||
|
||||
$r = $?;
|
||||
|
||||
if ($options =~ /v/) {
|
||||
if ($r == 0) {
|
||||
unlink ("$distpathname/version");
|
||||
if (open(VFILE,">$distpathname/version")) {
|
||||
print VFILE "$version\n";
|
||||
close(VFILE);
|
||||
}
|
||||
}
|
||||
else {
|
||||
print STDERR "Could not create '$distpathname/version'. Permissions?\n";
|
||||
$returncode ++;
|
||||
}
|
||||
}
|
||||
} # if (doimport)
|
||||
} # if (-e releasejarpathname/jarfile)
|
||||
} # foreach jarfile)
|
||||
} # foreach IMPORT
|
||||
|
||||
|
||||
|
||||
exit($returncode);
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,652 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
ifdef NS_USE_JDK
|
||||
#######################################################################
|
||||
# [1] Define preliminary JDK "Core Components" toolset options #
|
||||
#######################################################################
|
||||
|
||||
# set default JDK java threading model
|
||||
ifeq ($(JDK_THREADING_MODEL),)
|
||||
JDK_THREADING_MODEL = native_threads
|
||||
# no such thing as -native flag
|
||||
JDK_THREADING_MODEL_OPT =
|
||||
endif
|
||||
|
||||
#######################################################################
|
||||
# [2] Define platform-independent JDK "Core Components" options #
|
||||
#######################################################################
|
||||
|
||||
# set default location of the java classes repository
|
||||
ifeq ($(JAVA_DESTPATH),)
|
||||
ifdef BUILD_OPT
|
||||
JAVA_DESTPATH = $(SOURCE_CLASSES_DIR)
|
||||
else
|
||||
JAVA_DESTPATH = $(SOURCE_CLASSES_DBG_DIR)
|
||||
endif
|
||||
endif
|
||||
|
||||
# set default location of the package under the java classes repository
|
||||
# note that this overrides the default package value in ruleset.mk
|
||||
ifeq ($(PACKAGE),)
|
||||
PACKAGE = .
|
||||
endif
|
||||
|
||||
# set default location of the java source code repository
|
||||
ifeq ($(JAVA_SOURCEPATH),)
|
||||
JAVA_SOURCEPATH = .
|
||||
endif
|
||||
|
||||
# add JNI directory to default include search path
|
||||
ifneq ($(JNI_GEN),)
|
||||
ifdef NSBUILDROOT
|
||||
INCLUDES += -I$(JNI_GEN_DIR) -I$(SOURCE_XP_DIR)
|
||||
else
|
||||
INCLUDES += -I$(JNI_GEN_DIR)
|
||||
endif
|
||||
endif
|
||||
|
||||
#######################################################################
|
||||
# [3] Define platform-dependent JDK "Core Components" options #
|
||||
#######################################################################
|
||||
|
||||
# set [Microsoft Windows] platforms
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
# (1) specify "location" information
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = //iridium/components/jdk/1.2.2_01/WINNT
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/classes.zip
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/classes.zip
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = ;
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = win32
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
INCLUDES += -I$(JAVA_HOME)/include/$(JAVA_ARCH)
|
||||
|
||||
# (3) specify "linker" information
|
||||
JAVA_CPU =
|
||||
|
||||
JAVA_LIBDIR = lib
|
||||
|
||||
JAVA_CLIBS =
|
||||
|
||||
JAVA_LIBS = -LIBPATH:$(JAVA_HOME)/$(JAVA_LIBDIR) jvm.lib
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# currently, disable JIT option on this platform
|
||||
JDK_JIT_OPT = -nojit
|
||||
endif
|
||||
|
||||
# set [Sun Solaris] platforms
|
||||
ifeq ($(OS_ARCH), SunOS)
|
||||
# (1) specify "location" information
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = /share/builds/components/jdk/1.2.2_01/SunOS
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/classes.zip
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/classes.zip
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = :
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = solaris
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
INCLUDES += -I$(JAVA_HOME)/include/$(JAVA_ARCH)
|
||||
|
||||
# (3) specify "linker" information
|
||||
JAVA_CPU = sparc
|
||||
|
||||
JAVA_LIBDIR = jre/lib/$(JAVA_CPU)
|
||||
|
||||
# ** IMPORTANT ** having -lthread before -lnspr is critical on solaris
|
||||
# when linking with -ljava as nspr redefines symbols in libthread that
|
||||
# cause JNI executables to fail with assert of bad thread stack values.
|
||||
JAVA_CLIBS = -lthread
|
||||
|
||||
JAVA_LIBS = -L$(JAVA_HOME)/$(JAVA_LIBDIR)/$(JDK_THREADING_MODEL) -lhpi
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR)/classic -ljvm
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR) -ljava
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# currently, disable JIT option on this platform
|
||||
JDK_JIT_OPT =
|
||||
endif
|
||||
|
||||
# set [Hewlett Packard HP-UX] platforms
|
||||
ifeq ($(OS_ARCH), HP-UX)
|
||||
# (1) specify "location" information (currently ONLY on "orville")
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = /opt/java1.2
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/classes.zip
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/classes.zip
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = :
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = hp-ux
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
INCLUDES += -I$(JAVA_HOME)/include/$(JAVA_ARCH)
|
||||
|
||||
# (3) specify "linker" information
|
||||
JAVA_CPU = PA_RISC
|
||||
|
||||
JAVA_LIBDIR = jre/lib/$(JAVA_CPU)
|
||||
|
||||
JAVA_CLIBS =
|
||||
|
||||
JAVA_LIBS = -L$(JAVA_HOME)/$(JAVA_LIBDIR)/$(JDK_THREADING_MODEL) -lhpi
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR)/classic -ljvm
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR) -ljava
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# no JIT option available on this platform
|
||||
JDK_JIT_OPT =
|
||||
endif
|
||||
|
||||
# set [Redhat Linux] platforms
|
||||
ifeq ($(OS_ARCH), Linux)
|
||||
# (1) specify "location" information
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = /share/builds/components/jdk/1.2.2/Linux
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/classes.zip
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/classes.zip
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = :
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = linux
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
INCLUDES += -I$(JAVA_HOME)/include/$(JAVA_ARCH)
|
||||
|
||||
# (3) specify "linker" information
|
||||
JAVA_CPU = i386
|
||||
|
||||
JAVA_LIBDIR = jre/lib/$(JAVA_CPU)
|
||||
|
||||
JAVA_CLIBS =
|
||||
|
||||
JAVA_LIBS = -L$(JAVA_HOME)/$(JAVA_LIBDIR)/$(JDK_THREADING_MODEL) -lhpi
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR)/classic -ljvm
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR) -ljava
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# no JIT option available on this platform
|
||||
JDK_JIT_OPT =
|
||||
endif
|
||||
|
||||
# set [IBM AIX] platforms
|
||||
ifeq ($(OS_ARCH), AIX)
|
||||
# (1) specify "location" information
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = /share/builds/components/jdk/1.2.2/AIX
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/classes.zip
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/classes.zip
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = :
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = aix
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
|
||||
# (3) specify "linker" information
|
||||
JAVA_CPU = aix
|
||||
|
||||
JAVA_LIBDIR = jre/bin
|
||||
|
||||
JAVA_CLIBS =
|
||||
|
||||
JAVA_LIBS = -L$(JAVA_HOME)/$(JAVA_LIBDIR) -lhpi
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR)/classic -ljvm
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR) -ljava
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# no JIT option available on this platform
|
||||
JDK_JIT_OPT =
|
||||
endif
|
||||
|
||||
# set [Digital UNIX] platforms
|
||||
ifeq ($(OS_ARCH), OSF1)
|
||||
# (1) specify "location" information
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = /share/builds/components/jdk/1.2.2_3/OSF1
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/classes.zip
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/classes.zip
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = :
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = alpha
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
INCLUDES += -I$(JAVA_HOME)/include/$(JAVA_ARCH)
|
||||
|
||||
# (3) specify "linker" information
|
||||
JAVA_CPU = alpha
|
||||
|
||||
JAVA_LIBDIR = jre/lib/$(JAVA_CPU)
|
||||
|
||||
JAVA_CLIBS =
|
||||
|
||||
JAVA_LIBS = -L$(JAVA_HOME)/$(JAVA_LIBDIR)/$(JDK_THREADING_MODEL) -lhpi
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR)/classic -ljvm
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR) -ljava
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# no JIT option available on this platform
|
||||
JDK_JIT_OPT =
|
||||
endif
|
||||
|
||||
# set [Silicon Graphics IRIX] platforms
|
||||
ifeq ($(OS_ARCH), IRIX)
|
||||
# (1) specify "location" information
|
||||
ifeq ($(JAVA_HOME),)
|
||||
JAVA_HOME = /share/builds/components/jdk/1.2.1/IRIX
|
||||
endif
|
||||
|
||||
JAVA_CLASSES = $(JAVA_HOME)/lib/dev.jar:$(JAVA_HOME)/lib/rt.jar
|
||||
|
||||
ifeq ($(JRE_HOME),)
|
||||
JRE_HOME = $(JAVA_HOME)
|
||||
JRE_CLASSES = $(JAVA_CLASSES)
|
||||
else
|
||||
ifeq ($(JRE_CLASSES),)
|
||||
JRE_CLASSES = $(JRE_HOME)/lib/dev.jar:$(JRE_HOME)/lib/rt.jar
|
||||
endif
|
||||
endif
|
||||
|
||||
PATH_SEPARATOR = :
|
||||
|
||||
# (2) specify "header" information
|
||||
JAVA_ARCH = irix
|
||||
|
||||
INCLUDES += -I$(JAVA_HOME)/include
|
||||
INCLUDES += -I$(JAVA_HOME)/include/$(JAVA_ARCH)
|
||||
|
||||
# (3) specify "-n32 linker" information
|
||||
JAVA_CPU = sgi
|
||||
|
||||
JAVA_LIBDIR = lib32/$(JAVA_CPU)
|
||||
|
||||
JAVA_CLIBS =
|
||||
|
||||
JAVA_LIBS = -L$(JAVA_HOME)/$(JAVA_LIBDIR)/$(JDK_THREADING_MODEL) -lhpi
|
||||
JAVA_LIBS += -lirixextra
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR)/classic -ljvm
|
||||
JAVA_LIBS += -L$(JAVA_HOME)/$(JAVA_LIBDIR) -ljava
|
||||
JAVA_LIBS += $(JAVA_CLIBS)
|
||||
|
||||
LDFLAGS += $(JAVA_LIBS)
|
||||
|
||||
# no JIT option available on this platform
|
||||
JDK_JIT_OPT =
|
||||
endif
|
||||
|
||||
#######################################################################
|
||||
# [4] Define remaining JDK "Core Components" default toolset options #
|
||||
#######################################################################
|
||||
|
||||
# set JDK optimization model
|
||||
ifeq ($(BUILD_OPT),1)
|
||||
JDK_OPTIMIZER_OPT = -O
|
||||
else
|
||||
JDK_OPTIMIZER_OPT = -g
|
||||
endif
|
||||
|
||||
# set minimal JDK debugging model
|
||||
ifeq ($(JDK_DEBUG),1)
|
||||
JDK_DEBUG_OPT = -debug
|
||||
else
|
||||
JDK_DEBUG_OPT =
|
||||
endif
|
||||
|
||||
# set default path to repository for JDK classes
|
||||
ifeq ($(JDK_CLASS_REPOSITORY_OPT),)
|
||||
JDK_CLASS_REPOSITORY_OPT = -d $(JAVA_DESTPATH)
|
||||
endif
|
||||
|
||||
# initialize the JDK heap size option to a default value
|
||||
ifeq ($(JDK_INIT_HEAP_OPT),)
|
||||
JDK_INIT_HEAP_OPT = -ms8m
|
||||
endif
|
||||
|
||||
# define a default JDK classpath
|
||||
ifeq ($(JDK_CLASSPATH),)
|
||||
JDK_CLASSPATH = "$(JAVA_DESTPATH)$(PATH_SEPARATOR)$(JAVA_SOURCEPATH)$(PATH_SEPARATOR)$(JAVA_CLASSES)"
|
||||
endif
|
||||
|
||||
# by default, override CLASSPATH environment variable using the JDK classpath option with $(JDK_CLASSPATH)
|
||||
ifeq ($(JDK_CLASSPATH_OPT),)
|
||||
JDK_CLASSPATH_OPT = -classpath $(JDK_CLASSPATH)
|
||||
endif
|
||||
|
||||
|
||||
endif
|
||||
|
||||
|
||||
ifdef NS_USE_JDK_TOOLSET
|
||||
#######################################################################
|
||||
# [5] Define JDK "Core Components" toolset; #
|
||||
# (always allow a user to override these values) #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# (1) appletviewer
|
||||
#
|
||||
|
||||
ifeq ($(APPLETVIEWER),)
|
||||
APPLETVIEWER_PROG = $(JAVA_HOME)/bin/appletviewer$(PROG_SUFFIX)
|
||||
APPLETVIEWER_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
APPLETVIEWER_FLAGS += $(JDK_DEBUG_OPT)
|
||||
APPLETVIEWER_FLAGS += $(JDK_JIT_OPT)
|
||||
APPLETVIEWER = $(APPLETVIEWER_PROG) $(APPLETVIEWER_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (2) jar
|
||||
#
|
||||
|
||||
ifeq ($(JAR),)
|
||||
JAR_PROG = $(JAVA_HOME)/bin/jar$(PROG_SUFFIX)
|
||||
JAR_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAR = $(JAR_PROG) $(JAR_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (3) java
|
||||
#
|
||||
|
||||
ifeq ($(JAVA),)
|
||||
JAVA_PROG = $(JAVA_HOME)/bin/java$(PROG_SUFFIX)
|
||||
JAVA_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVA_FLAGS += $(JDK_DEBUG_OPT)
|
||||
JAVA_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JAVA_FLAGS += $(JDK_INIT_HEAP_OPT)
|
||||
JAVA_FLAGS += $(JDK_JIT_OPT)
|
||||
JAVA = $(JAVA_PROG) $(JAVA_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (4) javac
|
||||
#
|
||||
|
||||
ifeq ($(JAVAC),)
|
||||
JAVAC_PROG = $(JAVA_HOME)/bin/javac$(PROG_SUFFIX)
|
||||
JAVAC_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVAC_FLAGS += $(JDK_OPTIMIZER_OPT)
|
||||
JAVAC_FLAGS += $(JDK_DEBUG_OPT)
|
||||
JAVAC_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JAVAC_FLAGS += -J$(JDK_INIT_HEAP_OPT)
|
||||
JAVAC_FLAGS += $(JDK_CLASS_REPOSITORY_OPT)
|
||||
JAVAC = $(JAVAC_PROG) $(JAVAC_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (5) javadoc
|
||||
#
|
||||
|
||||
ifeq ($(JAVADOC),)
|
||||
JAVADOC_PROG = $(JAVA_HOME)/bin/javadoc$(PROG_SUFFIX)
|
||||
JAVADOC_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVADOC_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JAVADOC_FLAGS += -J$(JDK_INIT_HEAP_OPT)
|
||||
JAVADOC = $(JAVADOC_PROG) $(JAVADOC_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (6) javah
|
||||
#
|
||||
|
||||
ifeq ($(JAVAH),)
|
||||
JAVAH_PROG = $(JAVA_HOME)/bin/javah$(PROG_SUFFIX)
|
||||
JAVAH_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVAH_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JAVAH = $(JAVAH_PROG) $(JAVAH_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (7) javakey
|
||||
#
|
||||
|
||||
ifeq ($(JAVAKEY),)
|
||||
JAVAKEY_PROG = $(JAVA_HOME)/bin/javakey$(PROG_SUFFIX)
|
||||
JAVAKEY_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVAKEY = $(JAVAKEY_PROG) $(JAVAKEY_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (8) javap
|
||||
#
|
||||
|
||||
ifeq ($(JAVAP),)
|
||||
JAVAP_PROG = $(JAVA_HOME)/bin/javap$(PROG_SUFFIX)
|
||||
JAVAP_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVAP_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JAVAP_FLAGS += -J$(JDK_INIT_HEAP_OPT)
|
||||
JAVAP = $(JAVAP_PROG) $(JAVAP_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (9) javat
|
||||
#
|
||||
|
||||
ifeq ($(JAVAT),)
|
||||
JAVAT_PROG = $(JAVA_HOME)/bin/javat$(PROG_SUFFIX)
|
||||
JAVAT_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVAT = $(JAVAT_PROG) $(JAVAT_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (10) javaverify
|
||||
#
|
||||
|
||||
ifeq ($(JAVAVERIFY),)
|
||||
JAVAVERIFY_PROG = $(JAVA_HOME)/bin/javaverify$(PROG_SUFFIX)
|
||||
JAVAVERIFY_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JAVAVERIFY = $(JAVAVERIFY_PROG) $(JAVAVERIFY_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (11) javaw
|
||||
#
|
||||
|
||||
ifeq ($(JAVAW),)
|
||||
jJAVAW_PROG = $(JAVA_HOME)/bin/javaw$(PROG_SUFFIX)
|
||||
jJAVAW_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
jJAVAW_FLAGS += $(JDK_DEBUG_OPT)
|
||||
jJAVAW_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
jJAVAW_FLAGS += $(JDK_INIT_HEAP_OPT)
|
||||
jJAVAW_FLAGS += $(JDK_JIT_OPT)
|
||||
jJAVAW = $(JAVAW_PROG) $(JAVAW_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (12) jdb
|
||||
#
|
||||
|
||||
ifeq ($(JDB),)
|
||||
JDB_PROG = $(JAVA_HOME)/bin/jdb$(PROG_SUFFIX)
|
||||
JDB_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JDB_FLAGS += $(JDK_DEBUG_OPT)
|
||||
JDB_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JDB_FLAGS += $(JDK_INIT_HEAP_OPT)
|
||||
JDB_FLAGS += $(JDK_JIT_OPT)
|
||||
JDB = $(JDB_PROG) $(JDB_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (13) jre
|
||||
#
|
||||
|
||||
ifeq ($(JRE),)
|
||||
JRE_PROG = $(JAVA_HOME)/bin/jre$(PROG_SUFFIX)
|
||||
JRE_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JRE_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JRE_FLAGS += $(JDK_INIT_HEAP_OPT)
|
||||
JRE_FLAGS += $(JDK_JIT_OPT)
|
||||
JRE = $(JRE_PROG) $(JRE_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (14) jrew
|
||||
#
|
||||
|
||||
ifeq ($(JREW),)
|
||||
JREW_PROG = $(JAVA_HOME)/bin/jrew$(PROG_SUFFIX)
|
||||
JREW_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
JREW_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
JREW_FLAGS += $(JDK_INIT_HEAP_OPT)
|
||||
JREW_FLAGS += $(JDK_JIT_OPT)
|
||||
JREW = $(JREW_PROG) $(JREW_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (15) native2ascii
|
||||
#
|
||||
|
||||
ifeq ($(NATIVE2ASCII),)
|
||||
NATIVE2ASCII_PROG = $(JAVA_HOME)/bin/native2ascii$(PROG_SUFFIX)
|
||||
NATIVE2ASCII_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
NATIVE2ASCII = $(NATIVE2ASCII_PROG) $(NATIVE2ASCII_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (16) rmic
|
||||
#
|
||||
|
||||
ifeq ($(RMIC),)
|
||||
RMIC_PROG = $(JAVA_HOME)/bin/rmic$(PROG_SUFFIX)
|
||||
RMIC_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
RMIC_FLAGS += $(JDK_OPTIMIZER_OPT)
|
||||
RMIC_FLAGS += $(JDK_CLASSPATH_OPT)
|
||||
RMIC = $(RMIC_PROG) $(RMIC_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (17) rmiregistry
|
||||
#
|
||||
|
||||
ifeq ($(RMIREGISTRY),)
|
||||
RMIREGISTRY_PROG = $(JAVA_HOME)/bin/rmiregistry$(PROG_SUFFIX)
|
||||
RMIREGISTRY_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
RMIREGISTRY = $(RMIREGISTRY_PROG) $(RMIREGISTRY_FLAGS)
|
||||
endif
|
||||
|
||||
#
|
||||
# (18) serialver
|
||||
#
|
||||
|
||||
ifeq ($(SERIALVER),)
|
||||
SERIALVER_PROG = $(JAVA_HOME)/bin/serialver$(PROG_SUFFIX)
|
||||
SERIALVER_FLAGS = $(JDK_THREADING_MODEL_OPT)
|
||||
SERIALVER = $(SERIALVER_PROG) $(SERIALVER_FLAGS)
|
||||
endif
|
||||
|
||||
endif
|
|
@ -0,0 +1,92 @@
|
|||
#!/usr/local/bin/perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
# Input: -d dir foo1 foo2 . . .
|
||||
# Compares generated "_jni/foo1.h" file with "foo1.class", and
|
||||
# generated "_jni/foo2.h" file with "foo2.class", etc.
|
||||
# (NOTE: unlike its closely related cousin, outofdate.pl,
|
||||
# the "-d dir" must always be specified)
|
||||
#
|
||||
# Returns: list of headers which are OLDER than corresponding class
|
||||
# files (non-existant class files are considered to be real old :-)
|
||||
|
||||
$found = 1;
|
||||
|
||||
if ($ARGV[0] eq '-d')
|
||||
{
|
||||
$classdir = $ARGV[1];
|
||||
$classdir .= "/";
|
||||
shift;
|
||||
shift;
|
||||
}
|
||||
else
|
||||
{
|
||||
print STDERR "Usage: perl ", $0, " -d dir foo1 foo2 . . .\n";
|
||||
exit -1;
|
||||
}
|
||||
|
||||
foreach $filename (@ARGV)
|
||||
{
|
||||
$headerfilename = "_jni/";
|
||||
$headerfilename .= $filename;
|
||||
$headerfilename =~ s/\./_/g;
|
||||
$headerfilename .= ".h";
|
||||
|
||||
$classfilename = $filename;
|
||||
$classfilename =~ s|\.|/|g;
|
||||
$classfilename .= ".class";
|
||||
|
||||
$classfilename = $classdir . $classfilename;
|
||||
|
||||
|
||||
( $dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size, $atime, $headermtime,
|
||||
$ctime, $blksize, $blocks ) = stat( $headerfilename );
|
||||
|
||||
( $dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size, $atime, $classmtime,
|
||||
$ctime, $blksize, $blocks ) = stat( $classfilename );
|
||||
|
||||
if( $headermtime < $classmtime )
|
||||
{
|
||||
# NOTE: Since this is used by "javah", and "javah" refuses to overwrite
|
||||
# an existing file, we force an unlink from this script, since
|
||||
# we actually want to regenerate the header file at this time.
|
||||
unlink $headerfilename;
|
||||
print $filename, " ";
|
||||
$found = 0;
|
||||
}
|
||||
}
|
||||
|
||||
print "\n";
|
||||
exit 0;
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" macros to figure out binary code location #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Figure out where the binary code lives.
|
||||
#
|
||||
|
||||
BUILD = $(PLATFORM)
|
||||
OBJDIR = $(PLATFORM)
|
||||
ifdef MOZILLA_SECURITY_BUILD
|
||||
DIST = $(CORE_DEPTH)/../dist/$(PLATFORM)
|
||||
else
|
||||
ifdef MOZILLA_CLIENT
|
||||
DIST = $(CORE_DEPTH)/../mozilla/dist/$(PLATFORM)
|
||||
else
|
||||
DIST = $(CORE_DEPTH)/dist/$(PLATFORM)
|
||||
endif
|
||||
endif
|
||||
VPATH = $(NSINSTALL_DIR)/$(PLATFORM)
|
||||
DEPENDENCIES = $(PLATFORM)/.md
|
||||
|
||||
ifdef BUILD_DEBUG_GC
|
||||
DEFINES += -DDEBUG_GC
|
||||
endif
|
||||
|
||||
GARBAGE += $(DEPENDENCIES) core $(wildcard core.[0-9]*)
|
|
@ -0,0 +1,100 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#
|
||||
# An NMAKE file to set up and adjust coreconf's build system for
|
||||
# Client build. Client build should invoke NMAKE on this file
|
||||
# instead of invoking gmake directly.
|
||||
#
|
||||
|
||||
NS_DEPTH = ..
|
||||
include <$(NS_DEPTH)\config\config.mak>
|
||||
#include <$(NS_DEPTH)\config\rules.mak>
|
||||
|
||||
#
|
||||
# Backslashes are escape characters to gmake, so flip all backslashes
|
||||
# in $(MOZ_TOOLS) to forward slashes and pass that to gmake.
|
||||
#
|
||||
|
||||
GMAKE = $(MOZ_TOOLS)\bin\gmake.exe MOZ_TOOLS_FLIPPED=$(MOZ_TOOLS:\=/)
|
||||
|
||||
GMAKE = $(GMAKE) PR_CLIENT_BUILD=1 PR_CLIENT_BUILD_WINDOWS=1
|
||||
|
||||
#
|
||||
# The Client's debug build uses MSVC's debug runtime library (/MDd).
|
||||
#
|
||||
|
||||
!ifdef MOZ_DEBUG
|
||||
GMAKE = $(GMAKE) USE_DEBUG_RTL=1
|
||||
!else
|
||||
GMAKE = $(GMAKE) BUILD_OPT=1
|
||||
!endif
|
||||
|
||||
!if "$(MOZ_BITS)" == "16"
|
||||
GMAKE = $(GMAKE) OS_TARGET=WIN16
|
||||
!else
|
||||
|
||||
GMAKE = $(GMAKE) OS_TARGET=WIN95
|
||||
!ifdef MOZ_DEBUG
|
||||
PR_OBJDIR = WIN954.0_DBG.OBJD
|
||||
!else
|
||||
PR_OBJDIR = WIN954.0_OPT.OBJ
|
||||
!endif
|
||||
|
||||
!endif
|
||||
|
||||
#
|
||||
# The rules. Simply invoke gmake with the same target
|
||||
# for Win16, use the watcom compiler with the MSVC headers and libs
|
||||
#
|
||||
|
||||
# this rule is needed so that nmake with no explicit target will only build
|
||||
# all, and not build all the targets named below in succession!
|
||||
default:: all
|
||||
|
||||
# a rule like this one must only be used for explicitly named targets!
|
||||
all depend export libs install clobber clobber_all clean::
|
||||
!if "$(MOZ_BITS)" == "16"
|
||||
set PATH=%WATCPATH%
|
||||
set INCLUDE=%MSVC_INC%
|
||||
set LIB=%MSVC_LIB%
|
||||
!endif
|
||||
$(GMAKE) $@
|
||||
!if "$(MOZ_BITS)" == "16"
|
||||
set PATH=%MSVCPATH%
|
||||
set INCLUDE=%MSVC_INC%
|
||||
set LIB=%MSVC_LIB%
|
||||
!endif
|
||||
|
||||
show:
|
||||
@echo "MAKEFLAGS = $(MAKEFLAGS)"
|
|
@ -0,0 +1,64 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# The master "Core Components" source and release component directory #
|
||||
# names are ALWAYS identical and are the value of $(MODULE). #
|
||||
# NOTE: A component is also called a module or a subsystem. #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# All "Core Components" <component>-specific source-side tags must
|
||||
# always be identified for compiling/linking purposes
|
||||
#
|
||||
|
||||
ifndef JAVA_SOURCE_COMPONENT
|
||||
JAVA_SOURCE_COMPONENT = java
|
||||
endif
|
||||
|
||||
ifndef NETLIB_SOURCE_COMPONENT
|
||||
NETLIB_SOURCE_COMPONENT = netlib
|
||||
endif
|
||||
|
||||
ifndef NSPR_SOURCE_COMPONENT
|
||||
NSPR_SOURCE_COMPONENT = nspr20
|
||||
endif
|
||||
|
||||
ifndef SECTOOLS_SOURCE_COMPONENT
|
||||
SECTOOLS_SOURCE_COMPONENT = sectools
|
||||
endif
|
||||
|
||||
ifndef SECURITY_SOURCE_COMPONENT
|
||||
SECURITY_SOURCE_COMPONENT = security
|
||||
endif
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
DEPTH = ../..
|
||||
CORE_DEPTH = ../..
|
||||
|
||||
MODULE = coreconf
|
||||
|
||||
CSRCS = nsinstall.c pathsub.c
|
||||
|
||||
PLSRCS = nfspwd.pl
|
||||
|
||||
PROGRAM = nsinstall
|
||||
|
||||
include $(DEPTH)/coreconf/config.mk
|
||||
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
PROGRAM =
|
||||
else
|
||||
TARGETS = $(PROGRAM) $(PLSRCS:.pl=)
|
||||
endif
|
||||
|
||||
include $(DEPTH)/coreconf/rules.mk
|
||||
|
||||
# Redefine MAKE_OBJDIR for just this directory
|
||||
define MAKE_OBJDIR
|
||||
if test ! -d $(@D); then rm -rf $(@D); mkdir $(@D); fi
|
||||
endef
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
#! perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
require "fastcwd.pl";
|
||||
|
||||
$_ = &fastcwd;
|
||||
if (m@^/[uh]/@o || s@^/tmp_mnt/@/@o) {
|
||||
print("$_\n");
|
||||
} elsif ((($user, $rest) = m@^/usr/people/(\w+)/(.*)@o)
|
||||
&& readlink("/u/$user") eq "/usr/people/$user") {
|
||||
print("/u/$user/$rest\n");
|
||||
} else {
|
||||
chop($host = `hostname`);
|
||||
print("/h/$host$_\n");
|
||||
}
|
|
@ -0,0 +1,46 @@
|
|||
#! perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
require "fastcwd.pl";
|
||||
|
||||
$_ = &fastcwd;
|
||||
if (m@^/[uh]/@o || s@^/tmp_mnt/@/@o) {
|
||||
print("$_\n");
|
||||
} elsif ((($user, $rest) = m@^/usr/people/(\w+)/(.*)@o)
|
||||
&& readlink("/u/$user") eq "/usr/people/$user") {
|
||||
print("/u/$user/$rest\n");
|
||||
} else {
|
||||
chop($host = `hostname`);
|
||||
print("/h/$host$_\n");
|
||||
}
|
|
@ -0,0 +1,403 @@
|
|||
/*
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is the Netscape security libraries.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the
|
||||
* terms of the GNU General Public License Version 2 or later (the
|
||||
* "GPL"), in which case the provisions of the GPL are applicable
|
||||
* instead of those above. If you wish to allow use of your
|
||||
* version of this file only under the terms of the GPL and not to
|
||||
* allow others to use your version of this file under the MPL,
|
||||
* indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by
|
||||
* the GPL. If you do not delete the provisions above, a recipient
|
||||
* may use your version of this file under either the MPL or the
|
||||
* GPL.
|
||||
*/
|
||||
|
||||
/*
|
||||
** Netscape portable install command.
|
||||
*/
|
||||
#include <stdio.h> /* OSF/1 requires this before grp.h, so put it first */
|
||||
#include <assert.h>
|
||||
#include <fcntl.h>
|
||||
#include <string.h>
|
||||
#if defined(_WINDOWS)
|
||||
#include <windows.h>
|
||||
typedef unsigned int mode_t;
|
||||
#else
|
||||
#include <grp.h>
|
||||
#include <pwd.h>
|
||||
#include <errno.h>
|
||||
#include <stdlib.h>
|
||||
#include <unistd.h>
|
||||
#include <utime.h>
|
||||
#endif
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include "pathsub.h"
|
||||
|
||||
#define HAVE_LCHOWN
|
||||
|
||||
#if defined(AIX) || defined(BSDI) || defined(HPUX) || defined(LINUX) || defined(SUNOS4) || defined(SCO) || defined(UNIXWARE)
|
||||
#undef HAVE_LCHOWN
|
||||
#endif
|
||||
|
||||
#ifdef LINUX
|
||||
#include <getopt.h>
|
||||
#endif
|
||||
|
||||
#if defined(SCO) || defined(UNIXWARE) || defined(SNI) || defined(NCR) || defined(NEC)
|
||||
#if !defined(S_ISLNK) && defined(S_IFLNK)
|
||||
#define S_ISLNK(a) (((a) & S_IFMT) == S_IFLNK)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(SNI)
|
||||
extern int fchmod(int fildes, mode_t mode);
|
||||
#endif
|
||||
|
||||
static void
|
||||
usage(void)
|
||||
{
|
||||
fprintf(stderr,
|
||||
"usage: %s [-C cwd] [-L linkprefix] [-m mode] [-o owner] [-g group]\n"
|
||||
" %*s [-DdltR] file [file ...] directory\n",
|
||||
program, strlen(program), "");
|
||||
exit(2);
|
||||
}
|
||||
|
||||
/* this is more-or-less equivalent to mkdir -p */
|
||||
static int
|
||||
mkdirs(char *path, mode_t mode)
|
||||
{
|
||||
char * cp;
|
||||
int rv;
|
||||
struct stat sb;
|
||||
|
||||
if (!path || !path[0])
|
||||
fail("Null pointer or empty string passed to mkdirs()");
|
||||
while (*path == '/' && path[1] == '/')
|
||||
path++;
|
||||
while ((cp = strrchr(path, '/')) && cp[1] == '\0')
|
||||
*cp = '\0';
|
||||
if (cp && cp != path) {
|
||||
*cp = '\0';
|
||||
if ((stat(path, &sb) < 0 || !S_ISDIR(sb.st_mode)) &&
|
||||
mkdirs(path, mode) < 0) {
|
||||
return -1;
|
||||
}
|
||||
*cp = '/';
|
||||
}
|
||||
rv = mkdir(path, mode);
|
||||
if (rv) {
|
||||
if (errno != EEXIST)
|
||||
fail("mkdirs cannot make %s", path);
|
||||
fprintf(stderr, "directory creation race: %s\n", path);
|
||||
if (!stat(path, &sb) && S_ISDIR(sb.st_mode))
|
||||
rv = 0;
|
||||
}
|
||||
return rv;
|
||||
}
|
||||
|
||||
static uid_t
|
||||
touid(char *owner)
|
||||
{
|
||||
struct passwd *pw;
|
||||
uid_t uid;
|
||||
char *cp;
|
||||
|
||||
if (!owner || !owner[0])
|
||||
fail("Null pointer or empty string passed to touid()");
|
||||
pw = getpwnam(owner);
|
||||
if (pw)
|
||||
return pw->pw_uid;
|
||||
uid = strtol(owner, &cp, 0);
|
||||
if (uid == 0 && cp == owner)
|
||||
fail("cannot find uid for %s", owner);
|
||||
return uid;
|
||||
}
|
||||
|
||||
static gid_t
|
||||
togid(char *group)
|
||||
{
|
||||
struct group *gr;
|
||||
gid_t gid;
|
||||
char *cp;
|
||||
|
||||
if (!group || !group[0])
|
||||
fail("Null pointer or empty string passed to togid()");
|
||||
gr = getgrnam(group);
|
||||
if (gr)
|
||||
return gr->gr_gid;
|
||||
gid = strtol(group, &cp, 0);
|
||||
if (gid == 0 && cp == group)
|
||||
fail("cannot find gid for %s", group);
|
||||
return gid;
|
||||
}
|
||||
|
||||
void * const uninit = (void *)0xdeadbeef;
|
||||
|
||||
int
|
||||
main(int argc, char **argv)
|
||||
{
|
||||
char * base = uninit;
|
||||
char * bp = uninit;
|
||||
char * cp = uninit;
|
||||
char * cwd = 0;
|
||||
char * group = 0;
|
||||
char * linkname = 0;
|
||||
char * linkprefix = 0;
|
||||
char * name = uninit;
|
||||
char * owner = 0;
|
||||
char * todir = uninit;
|
||||
char * toname = uninit;
|
||||
|
||||
int bnlen = -1;
|
||||
int cc = 0;
|
||||
int dodir = 0;
|
||||
int dolink = 0;
|
||||
int dorelsymlink = 0;
|
||||
int dotimes = 0;
|
||||
int exists = 0;
|
||||
int fromfd = -1;
|
||||
int len = -1;
|
||||
int lplen = 0;
|
||||
int onlydir = 0;
|
||||
int opt = -1;
|
||||
int tdlen = -1;
|
||||
int tofd = -1;
|
||||
int wc = -1;
|
||||
|
||||
mode_t mode = 0755;
|
||||
|
||||
uid_t uid = -1;
|
||||
gid_t gid = -1;
|
||||
|
||||
struct stat sb;
|
||||
struct stat tosb;
|
||||
struct utimbuf utb;
|
||||
char buf[BUFSIZ];
|
||||
|
||||
program = strrchr(argv[0], '/');
|
||||
if (!program)
|
||||
program = strrchr(argv[0], '\\');
|
||||
program = program ? program+1 : argv[0];
|
||||
|
||||
|
||||
while ((opt = getopt(argc, argv, "C:DdlL:Rm:o:g:t")) != EOF) {
|
||||
switch (opt) {
|
||||
case 'C': cwd = optarg; break;
|
||||
case 'D': onlydir = 1; break;
|
||||
case 'd': dodir = 1; break;
|
||||
case 'l': dolink = 1; break;
|
||||
case 'L':
|
||||
linkprefix = optarg;
|
||||
lplen = strlen(linkprefix);
|
||||
dolink = 1;
|
||||
break;
|
||||
case 'R': dolink = dorelsymlink = 1; break;
|
||||
case 'm':
|
||||
mode = strtoul(optarg, &cp, 8);
|
||||
if (mode == 0 && cp == optarg)
|
||||
usage();
|
||||
break;
|
||||
case 'o': owner = optarg; break;
|
||||
case 'g': group = optarg; break;
|
||||
case 't': dotimes = 1; break;
|
||||
default: usage();
|
||||
}
|
||||
}
|
||||
|
||||
argc -= optind;
|
||||
argv += optind;
|
||||
if (argc < 2 - onlydir)
|
||||
usage();
|
||||
|
||||
todir = argv[argc-1];
|
||||
if ((stat(todir, &sb) < 0 || !S_ISDIR(sb.st_mode)) &&
|
||||
mkdirs(todir, 0777) < 0) {
|
||||
fail("cannot mkdir -p %s", todir);
|
||||
}
|
||||
if (onlydir)
|
||||
return 0;
|
||||
|
||||
if (!cwd) {
|
||||
cwd = getcwd(0, PATH_MAX);
|
||||
if (!cwd)
|
||||
fail("could not get CWD");
|
||||
}
|
||||
|
||||
/* make sure we can get into todir. */
|
||||
xchdir(todir);
|
||||
todir = getcwd(0, PATH_MAX);
|
||||
if (!todir)
|
||||
fail("could not get CWD in todir");
|
||||
tdlen = strlen(todir);
|
||||
|
||||
/* back to original directory. */
|
||||
xchdir(cwd);
|
||||
|
||||
uid = owner ? touid(owner) : -1;
|
||||
gid = group ? togid(group) : -1;
|
||||
|
||||
while (--argc > 0) {
|
||||
name = *argv++;
|
||||
len = strlen(name);
|
||||
base = xbasename(name);
|
||||
bnlen = strlen(base);
|
||||
toname = (char*)xmalloc(tdlen + 1 + bnlen + 1);
|
||||
sprintf(toname, "%s/%s", todir, base);
|
||||
retry:
|
||||
exists = (lstat(toname, &tosb) == 0);
|
||||
|
||||
if (dodir) {
|
||||
/* -d means create a directory, always */
|
||||
if (exists && !S_ISDIR(tosb.st_mode)) {
|
||||
int rv = unlink(toname);
|
||||
if (rv)
|
||||
fail("cannot unlink %s", toname);
|
||||
exists = 0;
|
||||
}
|
||||
if (!exists && mkdir(toname, mode) < 0) {
|
||||
/* we probably have two nsinstall programs in a race here. */
|
||||
if (errno == EEXIST && !stat(toname, &sb) &&
|
||||
S_ISDIR(sb.st_mode)) {
|
||||
fprintf(stderr, "directory creation race: %s\n", toname);
|
||||
goto retry;
|
||||
}
|
||||
fail("cannot make directory %s", toname);
|
||||
}
|
||||
if ((owner || group) && chown(toname, uid, gid) < 0)
|
||||
fail("cannot change owner of %s", toname);
|
||||
} else if (dolink) {
|
||||
if (*name == '/') {
|
||||
/* source is absolute pathname, link to it directly */
|
||||
linkname = 0;
|
||||
} else {
|
||||
if (linkprefix) {
|
||||
/* -L implies -l and prefixes names with a $cwd arg. */
|
||||
len += lplen + 1;
|
||||
linkname = (char*)xmalloc(len + 1);
|
||||
sprintf(linkname, "%s/%s", linkprefix, name);
|
||||
} else if (dorelsymlink) {
|
||||
/* Symlink the relative path from todir to source name. */
|
||||
linkname = (char*)xmalloc(PATH_MAX);
|
||||
|
||||
if (*todir == '/') {
|
||||
/* todir is absolute: skip over common prefix. */
|
||||
lplen = relatepaths(todir, cwd, linkname);
|
||||
strcpy(linkname + lplen, name);
|
||||
} else {
|
||||
/* todir is named by a relative path: reverse it. */
|
||||
reversepath(todir, name, len, linkname);
|
||||
xchdir(cwd);
|
||||
}
|
||||
|
||||
len = strlen(linkname);
|
||||
}
|
||||
name = linkname;
|
||||
}
|
||||
|
||||
/* Check for a pre-existing symlink with identical content. */
|
||||
if (exists &&
|
||||
(!S_ISLNK(tosb.st_mode) ||
|
||||
readlink(toname, buf, sizeof buf) != len ||
|
||||
strncmp(buf, name, len) != 0)) {
|
||||
int rmrv;
|
||||
rmrv = (S_ISDIR(tosb.st_mode) ? rmdir : unlink)(toname);
|
||||
if (rmrv < 0) {
|
||||
fail("destination exists, cannot remove %s", toname);
|
||||
}
|
||||
exists = 0;
|
||||
}
|
||||
if (!exists && symlink(name, toname) < 0) {
|
||||
if (errno == EEXIST) {
|
||||
fprintf(stderr, "symlink creation race: %s\n", toname);
|
||||
goto retry;
|
||||
}
|
||||
diagnosePath(toname);
|
||||
fail("cannot make symbolic link %s", toname);
|
||||
}
|
||||
#ifdef HAVE_LCHOWN
|
||||
if ((owner || group) && lchown(toname, uid, gid) < 0)
|
||||
fail("cannot change owner of %s", toname);
|
||||
#endif
|
||||
|
||||
if (linkname) {
|
||||
free(linkname);
|
||||
linkname = 0;
|
||||
}
|
||||
} else {
|
||||
/* Copy from name to toname, which might be the same file. */
|
||||
fromfd = open(name, O_RDONLY);
|
||||
if (fromfd < 0 || fstat(fromfd, &sb) < 0)
|
||||
fail("cannot access %s", name);
|
||||
if (exists &&
|
||||
(!S_ISREG(tosb.st_mode) || access(toname, W_OK) < 0)) {
|
||||
int rmrv;
|
||||
rmrv = (S_ISDIR(tosb.st_mode) ? rmdir : unlink)(toname);
|
||||
if (rmrv < 0) {
|
||||
fail("destination exists, cannot remove %s", toname);
|
||||
}
|
||||
}
|
||||
tofd = open(toname, O_CREAT | O_WRONLY, 0666);
|
||||
if (tofd < 0)
|
||||
fail("cannot create %s", toname);
|
||||
|
||||
bp = buf;
|
||||
while ((cc = read(fromfd, bp, sizeof buf)) > 0) {
|
||||
while ((wc = write(tofd, bp, cc)) > 0) {
|
||||
if ((cc -= wc) == 0)
|
||||
break;
|
||||
bp += wc;
|
||||
}
|
||||
if (wc < 0)
|
||||
fail("cannot write to %s", toname);
|
||||
}
|
||||
if (cc < 0)
|
||||
fail("cannot read from %s", name);
|
||||
|
||||
if (ftruncate(tofd, sb.st_size) < 0)
|
||||
fail("cannot truncate %s", toname);
|
||||
if (dotimes) {
|
||||
utb.actime = sb.st_atime;
|
||||
utb.modtime = sb.st_mtime;
|
||||
if (utime(toname, &utb) < 0)
|
||||
fail("cannot set times of %s", toname);
|
||||
}
|
||||
if (fchmod(tofd, mode) < 0)
|
||||
fail("cannot change mode of %s", toname);
|
||||
if ((owner || group) && fchown(tofd, uid, gid) < 0)
|
||||
fail("cannot change owner of %s", toname);
|
||||
|
||||
/* Must check for delayed (NFS) write errors on close. */
|
||||
if (close(tofd) < 0)
|
||||
fail("close reports write error on %s", toname);
|
||||
close(fromfd);
|
||||
}
|
||||
|
||||
free(toname);
|
||||
}
|
||||
|
||||
free(cwd);
|
||||
free(todir);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -0,0 +1,302 @@
|
|||
/*
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is the Netscape security libraries.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the
|
||||
* terms of the GNU General Public License Version 2 or later (the
|
||||
* "GPL"), in which case the provisions of the GPL are applicable
|
||||
* instead of those above. If you wish to allow use of your
|
||||
* version of this file only under the terms of the GPL and not to
|
||||
* allow others to use your version of this file under the MPL,
|
||||
* indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by
|
||||
* the GPL. If you do not delete the provisions above, a recipient
|
||||
* may use your version of this file under either the MPL or the
|
||||
* GPL.
|
||||
*/
|
||||
|
||||
/*
|
||||
** Pathname subroutines.
|
||||
*/
|
||||
#include <assert.h>
|
||||
#ifdef FREEBSD
|
||||
#include <sys/types.h>
|
||||
#endif /* FREEBSD */
|
||||
#include <dirent.h>
|
||||
#include <errno.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include "pathsub.h"
|
||||
#ifdef USE_REENTRANT_LIBC
|
||||
#include "libc_r.h"
|
||||
#endif /* USE_REENTRANT_LIBC */
|
||||
|
||||
char *program;
|
||||
|
||||
void
|
||||
fail(char *format, ...)
|
||||
{
|
||||
int error;
|
||||
va_list ap;
|
||||
|
||||
#ifdef USE_REENTRANT_LIBC
|
||||
R_STRERROR_INIT_R();
|
||||
#endif
|
||||
|
||||
error = errno;
|
||||
fprintf(stderr, "%s: ", program);
|
||||
va_start(ap, format);
|
||||
vfprintf(stderr, format, ap);
|
||||
va_end(ap);
|
||||
if (error)
|
||||
|
||||
#ifdef USE_REENTRANT_LIBC
|
||||
R_STRERROR_R(errno);
|
||||
fprintf(stderr, ": %s", r_strerror_r);
|
||||
#else
|
||||
fprintf(stderr, ": %s", strerror(errno));
|
||||
#endif
|
||||
|
||||
putc('\n', stderr);
|
||||
abort();
|
||||
exit(1);
|
||||
}
|
||||
|
||||
char *
|
||||
getcomponent(char *path, char *name)
|
||||
{
|
||||
if (*path == '\0')
|
||||
return 0;
|
||||
if (*path == '/') {
|
||||
*name++ = '/';
|
||||
} else {
|
||||
do {
|
||||
*name++ = *path++;
|
||||
} while (*path != '/' && *path != '\0');
|
||||
}
|
||||
*name = '\0';
|
||||
while (*path == '/')
|
||||
path++;
|
||||
return path;
|
||||
}
|
||||
|
||||
#ifdef UNIXWARE
|
||||
/* The static buffer in Unixware's readdir is too small. */
|
||||
struct dirent * readdir(DIR *d)
|
||||
{
|
||||
static struct dirent *buf = NULL;
|
||||
#define MAX_PATH_LEN 1024
|
||||
|
||||
if (buf == NULL)
|
||||
buf = (struct dirent *)xmalloc(sizeof(struct dirent) + MAX_PATH_LEN) ;
|
||||
return readdir_r(d, buf);
|
||||
}
|
||||
#endif
|
||||
|
||||
/* APPARENT BUG - ignores argument "dir", uses ".." instead. */
|
||||
char *
|
||||
ino2name(ino_t ino, char *dir)
|
||||
{
|
||||
DIR *dp;
|
||||
struct dirent *ep;
|
||||
char *name;
|
||||
|
||||
dp = opendir(".."); /* XXX */
|
||||
if (!dp)
|
||||
fail("cannot read parent directory");
|
||||
for (;;) {
|
||||
if (!(ep = readdir(dp)))
|
||||
fail("cannot find current directory");
|
||||
if (ep->d_ino == ino)
|
||||
break;
|
||||
}
|
||||
name = xstrdup(ep->d_name);
|
||||
closedir(dp);
|
||||
return name;
|
||||
}
|
||||
|
||||
void *
|
||||
xmalloc(size_t size)
|
||||
{
|
||||
void *p;
|
||||
|
||||
if (size <= 0)
|
||||
fail("attempted to allocate %u bytes", size);
|
||||
p = malloc(size);
|
||||
if (!p)
|
||||
fail("cannot allocate %u bytes", size);
|
||||
return p;
|
||||
}
|
||||
|
||||
char *
|
||||
xstrdup(char *s)
|
||||
{
|
||||
if (!s || !s[0])
|
||||
fail("Null pointer or empty string passed to xstrdup()");
|
||||
return strcpy((char*)xmalloc(strlen(s) + 1), s);
|
||||
}
|
||||
|
||||
char *
|
||||
xbasename(char *path)
|
||||
{
|
||||
char *cp;
|
||||
|
||||
if (!path || !path[0])
|
||||
fail("Null pointer or empty string passed to xbasename()");
|
||||
while ((cp = strrchr(path, '/')) && cp[1] == '\0')
|
||||
*cp = '\0';
|
||||
if (!cp) return path;
|
||||
return cp + 1;
|
||||
}
|
||||
|
||||
void
|
||||
xchdir(char *dir)
|
||||
{
|
||||
if (!dir || !dir[0])
|
||||
fail("Null pointer or empty string passed to xchdir()");
|
||||
if (chdir(dir) < 0)
|
||||
fail("cannot change directory to %s", dir);
|
||||
}
|
||||
|
||||
int
|
||||
relatepaths(char *from, char *to, char *outpath)
|
||||
{
|
||||
char *cp, *cp2;
|
||||
int len;
|
||||
char buf[NAME_MAX];
|
||||
|
||||
assert(*from == '/' && *to == '/');
|
||||
if (!from || *from != '/')
|
||||
fail("relatepaths: from path does not start with /");
|
||||
if (!to || *to != '/')
|
||||
fail("relatepaths: to path does not start with /");
|
||||
|
||||
for (cp = to, cp2 = from; *cp == *cp2; cp++, cp2++)
|
||||
if (*cp == '\0')
|
||||
break;
|
||||
while (cp[-1] != '/')
|
||||
cp--, cp2--;
|
||||
if (cp - 1 == to) {
|
||||
/* closest common ancestor is /, so use full pathname */
|
||||
len = strlen(strcpy(outpath, to));
|
||||
if (outpath[len] != '/') {
|
||||
outpath[len++] = '/';
|
||||
outpath[len] = '\0';
|
||||
}
|
||||
} else {
|
||||
len = 0;
|
||||
while ((cp2 = getcomponent(cp2, buf)) != 0) {
|
||||
strcpy(outpath + len, "../");
|
||||
len += 3;
|
||||
}
|
||||
while ((cp = getcomponent(cp, buf)) != 0) {
|
||||
sprintf(outpath + len, "%s/", buf);
|
||||
len += strlen(outpath + len);
|
||||
}
|
||||
}
|
||||
return len;
|
||||
}
|
||||
|
||||
void
|
||||
reversepath(char *inpath, char *name, int len, char *outpath)
|
||||
{
|
||||
char *cp, *cp2;
|
||||
char buf[NAME_MAX];
|
||||
struct stat sb;
|
||||
|
||||
cp = strcpy(outpath + PATH_MAX - (len + 1), name);
|
||||
cp2 = inpath;
|
||||
while ((cp2 = getcomponent(cp2, buf)) != 0) {
|
||||
if (strcmp(buf, ".") == 0)
|
||||
continue;
|
||||
if (strcmp(buf, "..") == 0) {
|
||||
if (stat(".", &sb) < 0)
|
||||
fail("cannot stat current directory");
|
||||
name = ino2name(sb.st_ino, "..");
|
||||
len = strlen(name);
|
||||
cp -= len + 1;
|
||||
strcpy(cp, name);
|
||||
cp[len] = '/';
|
||||
free(name);
|
||||
xchdir("..");
|
||||
} else {
|
||||
cp -= 3;
|
||||
strncpy(cp, "../", 3);
|
||||
xchdir(buf);
|
||||
}
|
||||
}
|
||||
strcpy(outpath, cp);
|
||||
}
|
||||
|
||||
void
|
||||
diagnosePath(const char * path)
|
||||
{
|
||||
char * myPath;
|
||||
char * slash;
|
||||
int rv;
|
||||
struct stat sb;
|
||||
char buf[BUFSIZ];
|
||||
|
||||
if (!path || !path[0])
|
||||
fail("Null pointer or empty string passed to mkdirs()");
|
||||
myPath = strdup(path);
|
||||
if (!myPath)
|
||||
fail("strdup() failed!");
|
||||
do {
|
||||
rv = lstat(myPath, &sb);
|
||||
if (rv < 0) {
|
||||
perror(myPath);
|
||||
} else if (S_ISLNK(sb.st_mode)) {
|
||||
rv = readlink(myPath, buf, sizeof buf);
|
||||
if (rv < 0) {
|
||||
perror("readlink");
|
||||
buf[0] = 0;
|
||||
} else {
|
||||
buf[rv] = 0;
|
||||
}
|
||||
fprintf(stderr, "%s is a link to %s\n", myPath, buf);
|
||||
} else if (S_ISDIR(sb.st_mode)) {
|
||||
fprintf(stderr, "%s is a directory\n", myPath);
|
||||
rv = access(myPath, X_OK);
|
||||
if (rv < 0) {
|
||||
fprintf(stderr, "%s: no search permission\n", myPath);
|
||||
}
|
||||
} else {
|
||||
fprintf(stderr, "%s is a file !?!\n", myPath);
|
||||
rv = access(myPath, F_OK);
|
||||
if (rv < 0) {
|
||||
fprintf(stderr, "%s does not exist\n", myPath);
|
||||
}
|
||||
}
|
||||
|
||||
/* chop path off one level. */
|
||||
slash = strrchr(myPath, '/');
|
||||
if (!slash)
|
||||
slash = strrchr(myPath, '\\');
|
||||
if (!slash)
|
||||
slash = myPath;
|
||||
*slash = 0;
|
||||
} while (myPath[0]);
|
||||
free(myPath);
|
||||
}
|
|
@ -0,0 +1,77 @@
|
|||
/*
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (the "License"); you may not use this file
|
||||
* except in compliance with the License. You may obtain a copy of
|
||||
* the License at http://www.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is the Netscape security libraries.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Netscape
|
||||
* Communications Corporation. Portions created by Netscape are
|
||||
* Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
*
|
||||
* Alternatively, the contents of this file may be used under the
|
||||
* terms of the GNU General Public License Version 2 or later (the
|
||||
* "GPL"), in which case the provisions of the GPL are applicable
|
||||
* instead of those above. If you wish to allow use of your
|
||||
* version of this file only under the terms of the GPL and not to
|
||||
* allow others to use your version of this file under the MPL,
|
||||
* indicate your decision by deleting the provisions above and
|
||||
* replace them with the notice and other provisions required by
|
||||
* the GPL. If you do not delete the provisions above, a recipient
|
||||
* may use your version of this file under either the MPL or the
|
||||
* GPL.
|
||||
*/
|
||||
|
||||
#ifndef pathsub_h___
|
||||
#define pathsub_h___
|
||||
/*
|
||||
** Pathname subroutines.
|
||||
**
|
||||
** Brendan Eich, 8/29/95
|
||||
*/
|
||||
#include <limits.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#if SUNOS4
|
||||
#include "sunos4.h"
|
||||
#endif
|
||||
|
||||
#ifndef PATH_MAX
|
||||
#define PATH_MAX 1024
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Just keep sane lengths
|
||||
*/
|
||||
#undef NAME_MAX
|
||||
#define NAME_MAX 256
|
||||
|
||||
extern char *program;
|
||||
|
||||
extern void fail(char *format, ...);
|
||||
extern char *getcomponent(char *path, char *name);
|
||||
extern char *ino2name(ino_t ino, char *dir);
|
||||
extern void *xmalloc(size_t size);
|
||||
extern char *xstrdup(char *s);
|
||||
extern char *xbasename(char *path);
|
||||
extern void xchdir(char *dir);
|
||||
|
||||
/* Relate absolute pathnames from and to returning the result in outpath. */
|
||||
extern int relatepaths(char *from, char *to, char *outpath);
|
||||
|
||||
/* NOTE: changes current working directory -- caveat emptor */
|
||||
extern void reversepath(char *inpath, char *name, int len, char *outpath);
|
||||
|
||||
/* stats every directory in path, reports results. */
|
||||
extern void diagnosePath(const char * path);
|
||||
|
||||
#endif /* pathsub_h___ */
|
|
@ -0,0 +1,163 @@
|
|||
/*
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
*/
|
||||
|
||||
#ifndef pr_sunos4_h___
|
||||
#define pr_sunos4_h___
|
||||
|
||||
#ifndef SVR4
|
||||
|
||||
/*
|
||||
** Hodge podge of random missing prototypes for the Sunos4 system
|
||||
*/
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
#include <time.h>
|
||||
#include <limits.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
#define PATH_MAX _POSIX_PATH_MAX
|
||||
|
||||
struct timeval;
|
||||
struct timezone;
|
||||
struct itimerval;
|
||||
struct sockaddr;
|
||||
struct stat;
|
||||
struct tm;
|
||||
|
||||
/* ctype.h */
|
||||
extern int tolower(int);
|
||||
extern int toupper(int);
|
||||
|
||||
/* errno.h */
|
||||
extern char *sys_errlist[];
|
||||
extern int sys_nerr;
|
||||
|
||||
#define strerror(e) sys_errlist[((unsigned)(e) < sys_nerr) ? e : 0]
|
||||
|
||||
extern void perror(const char *);
|
||||
|
||||
/* getopt */
|
||||
extern char *optarg;
|
||||
extern int optind;
|
||||
extern int getopt(int argc, char **argv, char *spec);
|
||||
|
||||
/* math.h */
|
||||
extern int srandom(long val);
|
||||
extern long random(void);
|
||||
|
||||
/* memory.h */
|
||||
#define memmove(to,from,len) bcopy((char*)(from),(char*)(to),len)
|
||||
|
||||
extern void bcopy(const char *, char *, int);
|
||||
|
||||
/* signal.h */
|
||||
/*
|
||||
** SunOS4 sigaction hides interrupts by default, so we can safely define
|
||||
** SA_RESTART to 0 (HP-UX is a counter-example -- its sigaction does not
|
||||
** hide interrupts but lacks an SA_RESTART option; you must use sigvector
|
||||
** and tweak the sigcontext from within each signal handler!).
|
||||
*/
|
||||
#define SA_RESTART 0
|
||||
#define SA_SIGINFO 0
|
||||
|
||||
/* stdio.h */
|
||||
extern int printf(const char *, ...);
|
||||
extern int fprintf(FILE *, const char *, ...);
|
||||
extern int vprintf(const char *, va_list);
|
||||
extern int vfprintf(FILE *, const char *, va_list);
|
||||
extern char *vsprintf(char *, const char *, va_list);
|
||||
extern int scanf(const char *, ...);
|
||||
extern int sscanf(const char *, const char *, ...);
|
||||
extern int fscanf(FILE *, const char *, ...);
|
||||
extern int fgetc(FILE *);
|
||||
extern int fputc(int, FILE *);
|
||||
extern int fputs(const char *, FILE *);
|
||||
extern int puts(const char *);
|
||||
extern int fread(void *, size_t, size_t, FILE *);
|
||||
extern int fwrite(const char *, int, int, FILE *);
|
||||
extern int fseek(FILE *, long, int);
|
||||
extern long ftell(FILE *);
|
||||
extern int rewind(FILE *);
|
||||
extern int fflush(FILE *);
|
||||
extern int _flsbuf(unsigned char, FILE *);
|
||||
extern int fclose(FILE *);
|
||||
extern int remove(const char *);
|
||||
extern int setvbuf(FILE *, char *, int, size_t);
|
||||
extern int system(const char *);
|
||||
extern FILE *popen(const char *, const char *);
|
||||
extern int pclose(FILE *);
|
||||
|
||||
/* stdlib.h */
|
||||
#define strtoul strtol
|
||||
|
||||
extern int isatty(int fildes);
|
||||
extern long strtol(const char *, char **, int);
|
||||
extern int putenv(const char *);
|
||||
extern void srand48(long);
|
||||
extern long lrand48(void);
|
||||
extern double drand48(void);
|
||||
|
||||
/* string.h */
|
||||
extern int strcasecmp(const char *, const char *);
|
||||
extern int strncasecmp(const char *, const char *, size_t);
|
||||
extern int strcoll(const char *, const char *);
|
||||
|
||||
/* time.h */
|
||||
extern time_t mktime(struct tm *);
|
||||
extern size_t strftime(char *, size_t, const char *, const struct tm *);
|
||||
extern int gettimeofday(struct timeval *, struct timezone *);
|
||||
extern int setitimer(int, struct itimerval *, struct itimerval *);
|
||||
extern time_t time(time_t *);
|
||||
extern time_t timegm(struct tm *);
|
||||
extern struct tm *localtime(const time_t *);
|
||||
extern struct tm *gmtime(const time_t *);
|
||||
|
||||
/* unistd.h */
|
||||
extern int rename(const char *, const char *);
|
||||
extern int ioctl(int, int, int *arg);
|
||||
extern int connect(int, struct sockaddr *, int);
|
||||
extern int readlink(const char *, char *, int);
|
||||
extern int symlink(const char *, const char *);
|
||||
extern int ftruncate(int, off_t);
|
||||
extern int fchmod(int, mode_t);
|
||||
extern int fchown(int, uid_t, gid_t);
|
||||
extern int lstat(const char *, struct stat *);
|
||||
extern int fstat(int, struct stat *);
|
||||
extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
|
||||
extern int gethostname(char *, int);
|
||||
extern char *getwd(char *);
|
||||
extern int getpagesize(void);
|
||||
|
||||
#endif /* SVR4 */
|
||||
|
||||
#endif /* pr_sunos4_h___ */
|
|
@ -0,0 +1,67 @@
|
|||
#!/usr/local/bin/perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#Input: [-d dir] foo1.java foo2.java
|
||||
#Compares with: foo1.class foo2.class (if -d specified, checks in 'dir',
|
||||
# otherwise assumes .class files in same directory as .java files)
|
||||
#Returns: list of input arguments which are newer than corresponding class
|
||||
#files (non-existant class files are considered to be real old :-)
|
||||
|
||||
$found = 1;
|
||||
|
||||
if ($ARGV[0] eq '-d') {
|
||||
$classdir = $ARGV[1];
|
||||
$classdir .= "/";
|
||||
shift;
|
||||
shift;
|
||||
} else {
|
||||
$classdir = "./";
|
||||
}
|
||||
|
||||
foreach $filename (@ARGV) {
|
||||
$classfilename = $classdir;
|
||||
$classfilename .= $filename;
|
||||
$classfilename =~ s/.java$/.class/;
|
||||
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,
|
||||
$ctime,$blksize,$blocks) = stat($filename);
|
||||
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$classmtime,
|
||||
$ctime,$blksize,$blocks) = stat($classfilename);
|
||||
# print $filename, " ", $mtime, ", ", $classfilename, " ", $classmtime, "\n";
|
||||
if ($mtime > $classmtime) {
|
||||
print $filename, " ";
|
||||
$found = 0;
|
||||
}
|
||||
}
|
||||
|
||||
print "\n";
|
|
@ -0,0 +1,38 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" <platform> tag #
|
||||
#######################################################################
|
||||
|
||||
PLATFORM = $(OBJDIR_NAME)
|
|
@ -0,0 +1,88 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" for computing program prefixes #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Object prefixes
|
||||
#
|
||||
|
||||
ifndef OBJ_PREFIX
|
||||
OBJ_PREFIX =
|
||||
endif
|
||||
|
||||
#
|
||||
# Library suffixes
|
||||
#
|
||||
|
||||
ifndef LIB_PREFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
LIB_PREFIX =
|
||||
else
|
||||
LIB_PREFIX = lib
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
ifndef DLL_PREFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
DLL_PREFIX =
|
||||
else
|
||||
DLL_PREFIX = lib
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
ifndef IMPORT_LIB_PREFIX
|
||||
IMPORT_LIB_PREFIX =
|
||||
endif
|
||||
|
||||
|
||||
ifndef PURE_LIB_PREFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
PURE_LIB_PREFIX =
|
||||
else
|
||||
PURE_LIB_PREFIX = purelib
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Program prefixes
|
||||
#
|
||||
|
||||
ifndef PROG_PREFIX
|
||||
PROG_PREFIX =
|
||||
endif
|
||||
|
|
@ -0,0 +1,136 @@
|
|||
#! /usr/local/bin/perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
|
||||
require('coreconf.pl');
|
||||
|
||||
#######-- read in variables on command line into %var
|
||||
|
||||
$var{ZIP} = "zip";
|
||||
|
||||
&parse_argv;
|
||||
|
||||
|
||||
######-- Do the packaging of jars.
|
||||
|
||||
foreach $jarfile (split(/ /,$var{FILES}) ) {
|
||||
print STDERR "---------------------------------------------\n";
|
||||
print STDERR "Packaging jar file $jarfile....\n";
|
||||
|
||||
$jarinfo = $var{$jarfile};
|
||||
|
||||
($jardir,$jaropts) = split(/\|/,$jarinfo);
|
||||
|
||||
$zipoptions = "-T";
|
||||
if ($jaropts =~ /a/) {
|
||||
if ($var{OS_ARCH} eq 'WINNT') {
|
||||
$zipoptions .= ' -ll';
|
||||
}
|
||||
}
|
||||
|
||||
# don't compress jar files containing classes since some java
|
||||
# implementations do not implement decompression correctly
|
||||
if ( ($jarfile eq 'xpclass.jar') || ($jarfile eq 'xpclass_dbg.jar') ) {
|
||||
$zipoptions .= ' -0';
|
||||
}
|
||||
|
||||
|
||||
# just in case the directory ends in a /, remove it
|
||||
if ($jardir =~ /\/$/) {
|
||||
chop $jardir;
|
||||
}
|
||||
|
||||
$dirdepth --;
|
||||
|
||||
print STDERR "jardir = $jardir\n";
|
||||
system("ls $jardir");
|
||||
|
||||
if (-d $jardir) {
|
||||
|
||||
|
||||
# count the number of slashes
|
||||
|
||||
$slashes =0;
|
||||
|
||||
foreach $i (split(//,$jardir)) {
|
||||
if ($i =~ /\//) {
|
||||
$slashes++;
|
||||
}
|
||||
}
|
||||
|
||||
$dotdots =0;
|
||||
|
||||
foreach $i (split(m|/|,$jardir)) {
|
||||
if ($i eq '..') {
|
||||
$dotdots ++;
|
||||
}
|
||||
}
|
||||
|
||||
$dirdepth = ($slashes +1) - (2*$dotdots);
|
||||
|
||||
print STDERR "changing dir $jardir\n";
|
||||
chdir($jardir);
|
||||
print STDERR "making dir META-INF\n";
|
||||
mkdir("META-INF",0755);
|
||||
|
||||
$filelist = "";
|
||||
opendir(DIR,".");
|
||||
while ($_ = readdir(DIR)) {
|
||||
if (! ( ($_ eq '.') || ($_ eq '..'))) {
|
||||
if ( $jaropts =~ /i/) {
|
||||
if (! /^include$/) {
|
||||
$filelist .= "$_ ";
|
||||
}
|
||||
}
|
||||
else {
|
||||
$filelist .= "$_ ";
|
||||
}
|
||||
}
|
||||
}
|
||||
closedir(DIR);
|
||||
|
||||
print STDERR "zip $zipoptions -r $jarfile $filelist\n";
|
||||
system("zip $zipoptions -r $jarfile $filelist");
|
||||
rmdir("META-INF");
|
||||
for $i (1 .. $dirdepth) {
|
||||
chdir("..");
|
||||
print STDERR "chdir ..\n";
|
||||
}
|
||||
}
|
||||
else {
|
||||
print STDERR "Directory $jardir doesn't exist\n";
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,971 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
### ###
|
||||
### R U L E S O F E N G A G E M E N T ###
|
||||
### ###
|
||||
#######################################################################
|
||||
|
||||
#######################################################################
|
||||
# Double-Colon rules for utilizing the binary release model. #
|
||||
#######################################################################
|
||||
|
||||
all:: export libs program install
|
||||
|
||||
ifeq ($(AUTOCLEAN),1)
|
||||
autobuild:: clean export private_export libs program install
|
||||
else
|
||||
autobuild:: export private_export libs program install
|
||||
endif
|
||||
|
||||
platform::
|
||||
@echo $(OBJDIR_NAME)
|
||||
|
||||
|
||||
#
|
||||
# IMPORTS will always be associated with a component. Therefore,
|
||||
# the "import" rule will always change directory to the top-level
|
||||
# of a component, and traverse the IMPORTS keyword from the
|
||||
# "manifest.mn" file located at this level only.
|
||||
#
|
||||
# note: if there is a trailing slash, the component will be appended
|
||||
# (see import.pl - only used for xpheader.jar)
|
||||
|
||||
import::
|
||||
@echo "== import.pl =="
|
||||
@perl -I$(CORE_DEPTH)/coreconf $(CORE_DEPTH)/coreconf/import.pl \
|
||||
"RELEASE_TREE=$(RELEASE_TREE)" \
|
||||
"IMPORTS=$(IMPORTS)" \
|
||||
"VERSION=$(VERSION)" \
|
||||
"OS_ARCH=$(OS_ARCH)" \
|
||||
"PLATFORM=$(PLATFORM)" \
|
||||
"OVERRIDE_IMPORT_CHECK=$(OVERRIDE_IMPORT_CHECK)" \
|
||||
"ALLOW_VERSION_OVERRIDE=$(ALLOW_VERSION_OVERRIDE)" \
|
||||
"SOURCE_RELEASE_PREFIX=$(SOURCE_RELEASE_XP_DIR)" \
|
||||
"SOURCE_MD_DIR=$(SOURCE_MD_DIR)" \
|
||||
"SOURCE_XP_DIR=$(SOURCE_XP_DIR)" \
|
||||
"FILES=$(IMPORT_XPCLASS_JAR) $(XPHEADER_JAR) $(MDHEADER_JAR) $(MDBINARY_JAR)" \
|
||||
"$(IMPORT_XPCLASS_JAR)=$(IMPORT_XP_DIR)|$(IMPORT_XPCLASS_DIR)|" \
|
||||
"$(XPHEADER_JAR)=$(IMPORT_XP_DIR)|$(SOURCE_XP_DIR)/public/|v" \
|
||||
"$(MDHEADER_JAR)=$(IMPORT_MD_DIR)|$(SOURCE_MD_DIR)/include|" \
|
||||
"$(MDBINARY_JAR)=$(IMPORT_MD_DIR)|$(SOURCE_MD_DIR)|"
|
||||
|
||||
export::
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
private_export::
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
release_export::
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
release_classes::
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
libs program install:: $(TARGETS)
|
||||
ifdef LIBRARY
|
||||
$(INSTALL) -m 664 $(LIBRARY) $(SOURCE_LIB_DIR)
|
||||
endif
|
||||
ifdef SHARED_LIBRARY
|
||||
$(INSTALL) -m 775 $(SHARED_LIBRARY) $(SOURCE_LIB_DIR)
|
||||
endif
|
||||
ifdef IMPORT_LIBRARY
|
||||
$(INSTALL) -m 775 $(IMPORT_LIBRARY) $(SOURCE_LIB_DIR)
|
||||
endif
|
||||
ifdef PURE_LIBRARY
|
||||
$(INSTALL) -m 775 $(PURE_LIBRARY) $(SOURCE_LIB_DIR)
|
||||
endif
|
||||
ifdef PROGRAM
|
||||
$(INSTALL) -m 775 $(PROGRAM) $(SOURCE_BIN_DIR)
|
||||
endif
|
||||
ifdef PROGRAMS
|
||||
$(INSTALL) -m 775 $(PROGRAMS) $(SOURCE_BIN_DIR)
|
||||
endif
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
tests::
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
clean clobber::
|
||||
rm -rf $(ALL_TRASH)
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
realclean clobber_all::
|
||||
rm -rf $(wildcard *.OBJ) dist $(ALL_TRASH)
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
#ifdef ALL_PLATFORMS
|
||||
#all_platforms:: $(NFSPWD)
|
||||
# @d=`$(NFSPWD)`; \
|
||||
# if test ! -d LOGS; then rm -rf LOGS; mkdir LOGS; fi; \
|
||||
# for h in $(PLATFORM_HOSTS); do \
|
||||
# echo "On $$h: $(MAKE) $(ALL_PLATFORMS) >& LOGS/$$h.log";\
|
||||
# rsh $$h -n "(chdir $$d; \
|
||||
# $(MAKE) $(ALL_PLATFORMS) >& LOGS/$$h.log; \
|
||||
# echo DONE) &" 2>&1 > LOGS/$$h.pid & \
|
||||
# sleep 1; \
|
||||
# done
|
||||
#
|
||||
#$(NFSPWD):
|
||||
# cd $(@D); $(MAKE) $(@F)
|
||||
#endif
|
||||
|
||||
#######################################################################
|
||||
# Double-Colon rules for populating the binary release model. #
|
||||
#######################################################################
|
||||
|
||||
|
||||
release_clean::
|
||||
rm -rf $(SOURCE_XP_DIR)/release/$(RELEASE_MD_DIR)
|
||||
|
||||
release:: release_clean release_export release_classes release_policy release_md release_jars release_cpdistdir
|
||||
|
||||
release_cpdistdir::
|
||||
@echo "== cpdist.pl =="
|
||||
@perl -I$(CORE_DEPTH)/coreconf $(CORE_DEPTH)/coreconf/cpdist.pl \
|
||||
"RELEASE_TREE=$(RELEASE_TREE)" \
|
||||
"CORE_DEPTH=$(CORE_DEPTH)" \
|
||||
"MODULE=${MODULE}" \
|
||||
"OS_ARCH=$(OS_ARCH)" \
|
||||
"RELEASE=$(RELEASE)" \
|
||||
"PLATFORM=$(PLATFORM)" \
|
||||
"RELEASE_VERSION=$(RELEASE_VERSION)" \
|
||||
"SOURCE_RELEASE_PREFIX=$(SOURCE_RELEASE_XP_DIR)" \
|
||||
"RELEASE_XP_DIR=$(RELEASE_XP_DIR)" \
|
||||
"RELEASE_MD_DIR=$(RELEASE_MD_DIR)" \
|
||||
"FILES=$(XPCLASS_JAR) $(XPCLASS_DBG_JAR) $(XPHEADER_JAR) $(MDHEADER_JAR) $(MDBINARY_JAR) XP_FILES MD_FILES" \
|
||||
"$(XPCLASS_JAR)=$(SOURCE_RELEASE_CLASSES_DIR)|x"\
|
||||
"$(XPCLASS_DBG_JAR)=$(SOURCE_RELEASE_CLASSES_DBG_DIR)|x"\
|
||||
"$(XPHEADER_JAR)=$(SOURCE_RELEASE_XPHEADERS_DIR)|x" \
|
||||
"$(MDHEADER_JAR)=$(SOURCE_RELEASE_MDHEADERS_DIR)|m" \
|
||||
"$(MDBINARY_JAR)=$(SOURCE_RELEASE_MD_DIR)|m" \
|
||||
"XP_FILES=$(XP_FILES)|xf" \
|
||||
"MD_FILES=$(MD_FILES)|mf"
|
||||
|
||||
|
||||
# $(SOURCE_RELEASE_xxx_JAR) is a name like yyy.jar
|
||||
# $(SOURCE_RELEASE_xx_DIR) is a name like
|
||||
|
||||
release_jars::
|
||||
@echo "== release.pl =="
|
||||
@perl -I$(CORE_DEPTH)/coreconf $(CORE_DEPTH)/coreconf/release.pl \
|
||||
"RELEASE_TREE=$(RELEASE_TREE)" \
|
||||
"PLATFORM=$(PLATFORM)" \
|
||||
"OS_ARCH=$(OS_ARCH)" \
|
||||
"RELEASE_VERSION=$(RELEASE_VERSION)" \
|
||||
"SOURCE_RELEASE_DIR=$(SOURCE_RELEASE_DIR)" \
|
||||
"FILES=$(XPCLASS_JAR) $(XPCLASS_DBG_JAR) $(XPHEADER_JAR) $(MDHEADER_JAR) $(MDBINARY_JAR)" \
|
||||
"$(XPCLASS_JAR)=$(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_CLASSES_DIR)|b"\
|
||||
"$(XPCLASS_DBG_JAR)=$(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_CLASSES_DBG_DIR)|b"\
|
||||
"$(XPHEADER_JAR)=$(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_XPHEADERS_DIR)|a" \
|
||||
"$(MDHEADER_JAR)=$(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_MDHEADERS_DIR)|a" \
|
||||
"$(MDBINARY_JAR)=$(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_MD_DIR)|bi"
|
||||
|
||||
# Rules for releasing classes.
|
||||
# We have to do some REALLY gross stuff to deal with multiple classes in one
|
||||
# file, as well as nested classes, which have a filename of the form
|
||||
# ContainingClass$NestedClass.class.
|
||||
# RELEASE_CLASSES simply performs a required patsubst on CLASSES
|
||||
# RELEASE_CLASS_PATH is RELEASE_CLASSES with the path (in ns/dist) prepended
|
||||
# RELEASE_NESTED is all the nested classes in RELEASE_CLASS_PATH. We use a
|
||||
# foreach and wildcard to get all the files that start out like one of the
|
||||
# class files, then have a $. So, for each class file, we look for file$*
|
||||
# RELEASE_FILES is the combination of RELEASE_NESTED and the class files
|
||||
# specified by RELEASE_CLASSES which have .class appended to them. Note that
|
||||
# the RELEASE_NESTED don't need to have .class appended because they were
|
||||
# read in from the wildcard as complete filenames.
|
||||
#
|
||||
# The _DBG versions are the debuggable ones.
|
||||
ifneq ($(CLASSES),)
|
||||
|
||||
RELEASE_CLASSES := $(patsubst %,%,$(CLASSES))
|
||||
|
||||
ifdef BUILD_OPT
|
||||
RELEASE_CLASS_PATH := $(patsubst %,$(SOURCE_CLASSES_DIR)/$(PACKAGE)/%, $(RELEASE_CLASSES))
|
||||
RELEASE_NESTED := $(foreach file,$(RELEASE_CLASS_PATH),$(wildcard $(file)$$*))
|
||||
RELEASE_FILES := $(patsubst %,%.class,$(RELEASE_CLASS_PATH)) $(RELEASE_NESTED)
|
||||
else
|
||||
RELEASE_DBG_CLASS_PATH:= $(patsubst %,$(SOURCE_CLASSES_DBG_DIR)/$(PACKAGE)/%, $(RELEASE_CLASSES))
|
||||
RELEASE_DBG_NESTED := $(foreach file,$(RELEASE_DBG_CLASS_PATH),$(wildcard $(file)$$*))
|
||||
RELEASE_DBG_FILES := $(patsubst %,%.class,$(RELEASE_DBG_CLASS_PATH)) $(RELEASE_DBG_NESTED)
|
||||
endif
|
||||
|
||||
# Substitute \$ for $ so the shell doesn't choke
|
||||
ifdef BUILD_OPT
|
||||
release_classes::
|
||||
$(INSTALL) -m 444 $(subst $$,\$$,$(RELEASE_FILES)) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_CLASSES_DIR)/$(PACKAGE)
|
||||
else
|
||||
release_classes::
|
||||
$(INSTALL) -m 444 $(subst $$,\$$,$(RELEASE_DBG_FILES)) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_CLASSES_DBG_DIR)/$(PACKAGE)
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
ifneq ($(POLICY),)
|
||||
release_policy::
|
||||
ifdef LIBRARY
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $(LIBRARY)
|
||||
endif
|
||||
ifdef SHARED_LIBRARY
|
||||
ifdef COMPRESS_TARGET
|
||||
if test -f $(SHARED_LIBRARY).bak; then \
|
||||
cp $(SHARED_LIBRARY).bak $(SHARED_LIBRARY); \
|
||||
fi;
|
||||
endif
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $(SHARED_LIBRARY)
|
||||
ifdef COMPRESS_TARGET
|
||||
$(COMPRESS_TARGET) $(SHARED_LIBRARY)
|
||||
endif
|
||||
endif
|
||||
ifdef IMPORT_LIBRARY
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $(IMPORT_LIBRARY)
|
||||
endif
|
||||
ifdef PURE_LIBRARY
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $(PURE_LIBRARY)
|
||||
endif
|
||||
ifdef PROGRAM
|
||||
ifdef COMPRESS_TARGET
|
||||
if test -f $(PROGRAM).bak; then \
|
||||
cp $(PROGRAM).bak $(PROGRAM); \
|
||||
fi;
|
||||
endif
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $(PROGRAM)
|
||||
ifdef COMPRESS_TARGET
|
||||
$(COMPRESS_TARGET) $(PROGRAM)
|
||||
endif
|
||||
endif
|
||||
ifdef PROGRAMS
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $(PROGRAMS)
|
||||
endif
|
||||
+$(LOOP_OVER_DIRS)
|
||||
else
|
||||
release_policy::
|
||||
+$(LOOP_OVER_DIRS)
|
||||
endif
|
||||
|
||||
release_md::
|
||||
ifdef LIBRARY
|
||||
$(INSTALL) -m 444 $(LIBRARY) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_LIB_DIR)
|
||||
endif
|
||||
ifdef SHARED_LIBRARY
|
||||
$(INSTALL) -m 555 $(SHARED_LIBRARY) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_LIB_DIR)
|
||||
endif
|
||||
ifdef IMPORT_LIBRARY
|
||||
$(INSTALL) -m 555 $(IMPORT_LIBRARY) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_LIB_DIR)
|
||||
endif
|
||||
ifdef PURE_LIBRARY
|
||||
$(INSTALL) -m 555 $(PURE_LIBRARY) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_LIB_DIR)
|
||||
endif
|
||||
ifdef PROGRAM
|
||||
$(INSTALL) -m 555 $(PROGRAM) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_BIN_DIR)
|
||||
endif
|
||||
ifdef PROGRAMS
|
||||
$(INSTALL) -m 555 $(PROGRAMS) $(SOURCE_RELEASE_PREFIX)/$(SOURCE_RELEASE_BIN_DIR)
|
||||
endif
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
|
||||
alltags:
|
||||
rm -f TAGS
|
||||
find . -name dist -prune -o \( -name '*.[hc]' -o -name '*.cp' -o -name '*.cpp' \) -print | xargs etags -a
|
||||
find . -name dist -prune -o \( -name '*.[hc]' -o -name '*.cp' -o -name '*.cpp' \) -print | xargs ctags -a
|
||||
|
||||
$(PROGRAM): $(OBJS) $(EXTRA_LIBS)
|
||||
@$(MAKE_OBJDIR)
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
echo system windows >w16link
|
||||
echo option map >>w16link
|
||||
echo option oneautodata >>w16link
|
||||
echo option heapsize=32K >>w16link
|
||||
echo debug watcom all >>w16link
|
||||
echo name $@ >>w16link
|
||||
echo file >>w16link
|
||||
echo $(W16OBJS) , >>w16link
|
||||
echo $(W16LDFLAGS) >> w16link
|
||||
echo library >>w16link
|
||||
echo winsock.lib >>w16link
|
||||
$(LINK) @w16link.
|
||||
rm w16link
|
||||
else
|
||||
$(MKPROG) $(OBJS) -Fe$@ -link $(LDFLAGS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
|
||||
endif
|
||||
else
|
||||
$(MKPROG) -o $@ $(CFLAGS) $(OBJS) $(LDFLAGS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
|
||||
endif
|
||||
ifneq ($(POLICY),)
|
||||
#ifdef COMPRESS_TARGET
|
||||
# $(COMPRESS_TARGET)
|
||||
# We're going to cache a copy to keep around
|
||||
# cp $(PROGRAM) $(PROGRAM).org
|
||||
#endif
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $@
|
||||
endif
|
||||
|
||||
$(LIBRARY): $(OBJS)
|
||||
@$(MAKE_OBJDIR)
|
||||
rm -f $@
|
||||
$(AR) $(OBJS)
|
||||
$(RANLIB) $@
|
||||
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
$(IMPORT_LIBRARY): $(SHARED_LIBRARY)
|
||||
wlib +$(SHARED_LIBRARY)
|
||||
endif
|
||||
|
||||
$(SHARED_LIBRARY): $(OBJS)
|
||||
@$(MAKE_OBJDIR)
|
||||
rm -f $@
|
||||
ifeq ($(OS_ARCH)$(OS_RELEASE), AIX4.1)
|
||||
echo "#!" > $(OBJDIR)/lib$(LIBRARY_NAME)_syms
|
||||
nm -B -C -g $(OBJS) \
|
||||
| awk '/ [T,D] / {print $$3}' \
|
||||
| sed -e 's/^\.//' \
|
||||
| sort -u >> $(OBJDIR)/lib$(LIBRARY_NAME)_syms
|
||||
$(LD) $(XCFLAGS) -o $@ $(OBJS) -bE:$(OBJDIR)/lib$(LIBRARY_NAME)_syms \
|
||||
-bM:SRE -bnoentry $(OS_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS)
|
||||
else
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
echo system windows dll initinstance >w16link
|
||||
echo option map >>w16link
|
||||
echo option oneautodata >>w16link
|
||||
echo option heapsize=32K >>w16link
|
||||
echo debug watcom all >>w16link
|
||||
echo name $@ >>w16link
|
||||
echo file >>w16link
|
||||
echo $(W16OBJS) >>w16link
|
||||
echo $(W16LIBS) >>w16link
|
||||
echo libfile libentry >>w16link
|
||||
$(LINK) @w16link.
|
||||
rm w16link
|
||||
else
|
||||
$(LINK_DLL) -MAP $(DLLBASE) $(OBJS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS) $(LD_LIBS)
|
||||
endif
|
||||
else
|
||||
$(MKSHLIB) -o $@ $(OBJS) $(LD_LIBS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS)
|
||||
chmod +x $@
|
||||
endif
|
||||
endif
|
||||
ifneq ($(POLICY),)
|
||||
#ifdef COMPRESS_TARGET
|
||||
# $(COMPRESS_TARGET)
|
||||
# cp $@ $@.org
|
||||
#endif
|
||||
-$(PLCYPATCH) $(PLCYPATCH_ARGS) $@
|
||||
endif
|
||||
|
||||
$(PURE_LIBRARY):
|
||||
rm -f $@
|
||||
ifneq ($(OS_ARCH), WINNT)
|
||||
$(AR) $(OBJS)
|
||||
endif
|
||||
$(RANLIB) $@
|
||||
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
$(RES): $(RESNAME)
|
||||
@$(MAKE_OBJDIR)
|
||||
$(RC) -Fo$(RES) $(RESNAME)
|
||||
@echo $(RES) finished
|
||||
endif
|
||||
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(PROG_SUFFIX): $(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX)
|
||||
@$(MAKE_OBJDIR)
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
$(MKPROG) $(OBJDIR)/$(PROG_PREFIX)$*$(OBJ_SUFFIX) -Fe$@ -link \
|
||||
$(LDFLAGS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
|
||||
else
|
||||
$(MKPROG) -o $@ $(OBJDIR)/$(PROG_PREFIX)$*$(OBJ_SUFFIX) \
|
||||
$(LDFLAGS) $(EXTRA_LIBS) $(EXTRA_SHARED_LIBS) $(OS_LIBS)
|
||||
endif
|
||||
|
||||
ifdef HAVE_PURIFY
|
||||
$(OBJDIR)/$(PROG_PREFIX)%.pure: $(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX)
|
||||
@$(MAKE_OBJDIR)
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
$(PURIFY) $(CC) -Fo$@ -c $(CFLAGS) $(OBJDIR)/$(PROG_PREFIX)$*$(OBJ_SUFFIX) $(PURELDFLAGS)
|
||||
else
|
||||
$(PURIFY) $(CC) -o $@ $(CFLAGS) $(OBJDIR)/$(PROG_PREFIX)$*$(OBJ_SUFFIX) $(PURELDFLAGS)
|
||||
endif
|
||||
endif
|
||||
|
||||
WCCFLAGS1 := $(subst /,\\,$(CFLAGS))
|
||||
WCCFLAGS2 := $(subst -I,-i=,$(WCCFLAGS1))
|
||||
WCCFLAGS3 := $(subst -D,-d,$(WCCFLAGS2))
|
||||
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX): %.c
|
||||
@$(MAKE_OBJDIR)
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
echo $(WCCFLAGS3) >w16wccf
|
||||
$(CC) -zq -fo$(OBJDIR)\\$(PROG_PREFIX)$*$(OBJ_SUFFIX) @w16wccf $*.c
|
||||
rm w16wccf
|
||||
else
|
||||
$(CC) -Fo$@ -c $(CFLAGS) $*.c
|
||||
endif
|
||||
else
|
||||
$(CC) -o $@ -c $(CFLAGS) $*.c
|
||||
endif
|
||||
|
||||
ifneq ($(OS_ARCH), WINNT)
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX): %.s
|
||||
@$(MAKE_OBJDIR)
|
||||
$(AS) -o $@ $(ASFLAGS) -c $*.s
|
||||
endif
|
||||
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX): %.asm
|
||||
@$(MAKE_OBJDIR)
|
||||
$(AS) -Fo$@ $(ASFLAGS) -c $*.asm
|
||||
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX): %.S
|
||||
@$(MAKE_OBJDIR)
|
||||
$(AS) -o $@ $(ASFLAGS) -c $*.S
|
||||
|
||||
$(OBJDIR)/$(PROG_PREFIX)%: %.cpp
|
||||
@$(MAKE_OBJDIR)
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
$(CCC) -Fo$@ -c $(CFLAGS) $<
|
||||
else
|
||||
$(CCC) -o $@ -c $(CFLAGS) $<
|
||||
endif
|
||||
|
||||
#
|
||||
# Please keep the next two rules in sync.
|
||||
#
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX): %.cc
|
||||
@$(MAKE_OBJDIR)
|
||||
$(CCC) -o $@ -c $(CFLAGS) $*.cc
|
||||
|
||||
$(OBJDIR)/$(PROG_PREFIX)%$(OBJ_SUFFIX): %.cpp
|
||||
@$(MAKE_OBJDIR)
|
||||
ifdef STRICT_CPLUSPLUS_SUFFIX
|
||||
echo "#line 1 \"$*.cpp\"" | cat - $*.cpp > $(OBJDIR)/t_$*.cc
|
||||
$(CCC) -o $@ -c $(CFLAGS) $(OBJDIR)/t_$*.cc
|
||||
rm -f $(OBJDIR)/t_$*.cc
|
||||
else
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
$(CCC) -Fo$@ -c $(CFLAGS) $*.cpp
|
||||
else
|
||||
$(CCC) -o $@ -c $(CFLAGS) $*.cpp
|
||||
endif
|
||||
endif #STRICT_CPLUSPLUS_SUFFIX
|
||||
|
||||
%.i: %.cpp
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
echo $(WCCFLAGS3) >w16wccf
|
||||
$(CCC) -pl -fo=$* @w16wccf $*.cpp
|
||||
rm w16wccf
|
||||
else
|
||||
$(CCC) -C -E $(CFLAGS) $< > $*.i
|
||||
endif
|
||||
|
||||
%.i: %.c
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
echo $(WCCFLAGS3) >w16wccf
|
||||
$(CC) -pl -fo=$* @w16wccf $*.c
|
||||
rm w16wccf
|
||||
else
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
$(CC) -C /P $(CFLAGS) $<
|
||||
else
|
||||
$(CC) -C -E $(CFLAGS) $< > $*.i
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(OS_ARCH), WINNT)
|
||||
%.i: %.s
|
||||
$(CC) -C -E $(CFLAGS) $< > $*.i
|
||||
endif
|
||||
|
||||
%: %.pl
|
||||
rm -f $@; cp $*.pl $@; chmod +x $@
|
||||
|
||||
%: %.sh
|
||||
rm -f $@; cp $*.sh $@; chmod +x $@
|
||||
|
||||
ifdef DIRS
|
||||
$(DIRS)::
|
||||
@if test -d $@; then \
|
||||
set $(EXIT_ON_ERROR); \
|
||||
echo "cd $@; $(MAKE)"; \
|
||||
cd $@; $(MAKE); \
|
||||
set +e; \
|
||||
else \
|
||||
echo "Skipping non-directory $@..."; \
|
||||
fi; \
|
||||
$(CLICK_STOPWATCH)
|
||||
endif
|
||||
|
||||
################################################################################
|
||||
# Bunch of things that extend the 'export' rule (in order):
|
||||
################################################################################
|
||||
|
||||
$(JAVA_DESTPATH) $(JAVA_DESTPATH)/$(PACKAGE) $(JMCSRCDIR)::
|
||||
@if test ! -d $@; then \
|
||||
echo Creating $@; \
|
||||
rm -rf $@; \
|
||||
$(NSINSTALL) -D $@; \
|
||||
fi
|
||||
|
||||
################################################################################
|
||||
## IDL_GEN
|
||||
|
||||
ifneq ($(IDL_GEN),)
|
||||
|
||||
#export::
|
||||
# $(IDL2JAVA) $(IDL_GEN)
|
||||
|
||||
#all:: export
|
||||
|
||||
#clobber::
|
||||
# rm -f $(IDL_GEN:.idl=.class) # XXX wrong!
|
||||
|
||||
endif
|
||||
|
||||
################################################################################
|
||||
### JSRCS -- for compiling java files
|
||||
###
|
||||
### NOTE: For backwards compatibility, if $(NETLIBDEPTH) is defined,
|
||||
### replace $(CORE_DEPTH) with $(NETLIBDEPTH).
|
||||
###
|
||||
|
||||
ifneq ($(JSRCS),)
|
||||
ifneq ($(JAVAC),)
|
||||
ifdef NETLIBDEPTH
|
||||
CORE_DEPTH := $(NETLIBDEPTH)
|
||||
endif
|
||||
|
||||
JAVA_EXPORT_SRCS=$(shell perl $(CORE_DEPTH)/coreconf/outofdate.pl $(PERLARG) -d $(JAVA_DESTPATH)/$(PACKAGE) $(JSRCS) $(PRIVATE_JSRCS))
|
||||
|
||||
export:: $(JAVA_DESTPATH) $(JAVA_DESTPATH)/$(PACKAGE)
|
||||
ifneq ($(JAVA_EXPORT_SRCS),)
|
||||
$(JAVAC) $(JAVA_EXPORT_SRCS)
|
||||
endif
|
||||
|
||||
all:: export
|
||||
|
||||
clobber::
|
||||
rm -f $(SOURCE_XP_DIR)/classes/$(PACKAGE)/*.class
|
||||
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# JDIRS -- like JSRCS, except you can give a list of directories and it will
|
||||
# compile all the out-of-date java files in those directories.
|
||||
#
|
||||
# NOTE: recursing through these can speed things up, but they also cause
|
||||
# some builds to run out of memory
|
||||
#
|
||||
# NOTE: For backwards compatibility, if $(NETLIBDEPTH) is defined,
|
||||
# replace $(CORE_DEPTH) with $(NETLIBDEPTH).
|
||||
#
|
||||
ifdef JDIRS
|
||||
ifneq ($(JAVAC),)
|
||||
ifdef NETLIBDEPTH
|
||||
CORE_DEPTH := $(NETLIBDEPTH)
|
||||
endif
|
||||
|
||||
export:: $(JAVA_DESTPATH) $(JAVA_DESTPATH)/$(PACKAGE)
|
||||
@for d in $(JDIRS); do \
|
||||
if test -d $$d; then \
|
||||
set $(EXIT_ON_ERROR); \
|
||||
files=`echo $$d/*.java`; \
|
||||
list=`perl $(CORE_DEPTH)/coreconf/outofdate.pl $(PERLARG) \
|
||||
-d $(JAVA_DESTPATH)/$(PACKAGE) $$files`; \
|
||||
if test "$${list}x" != "x"; then \
|
||||
echo Building all java files in $$d; \
|
||||
echo $(JAVAC) $$list; \
|
||||
$(JAVAC) $$list; \
|
||||
fi; \
|
||||
set +e; \
|
||||
else \
|
||||
echo "Skipping non-directory $$d..."; \
|
||||
fi; \
|
||||
$(CLICK_STOPWATCH); \
|
||||
done
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# JDK_GEN -- for generating "old style" native methods
|
||||
#
|
||||
# Generate JDK Headers and Stubs into the '_gen' and '_stubs' directory
|
||||
#
|
||||
# NOTE: For backwards compatibility, if $(NETLIBDEPTH) is defined,
|
||||
# replace $(CORE_DEPTH) with $(NETLIBDEPTH).
|
||||
#
|
||||
ifneq ($(JDK_GEN),)
|
||||
ifneq ($(JAVAH),)
|
||||
ifdef NSBUILDROOT
|
||||
INCLUDES += -I$(JDK_GEN_DIR) -I$(SOURCE_XP_DIR)
|
||||
else
|
||||
INCLUDES += -I$(JDK_GEN_DIR)
|
||||
endif
|
||||
|
||||
ifdef NETLIBDEPTH
|
||||
CORE_DEPTH := $(NETLIBDEPTH)
|
||||
endif
|
||||
|
||||
JDK_PACKAGE_CLASSES := $(JDK_GEN)
|
||||
JDK_PATH_CLASSES := $(subst .,/,$(JDK_PACKAGE_CLASSES))
|
||||
JDK_HEADER_CLASSFILES := $(patsubst %,$(JAVA_DESTPATH)/%.class,$(JDK_PATH_CLASSES))
|
||||
JDK_STUB_CLASSFILES := $(patsubst %,$(JAVA_DESTPATH)/%.class,$(JDK_PATH_CLASSES))
|
||||
JDK_HEADER_CFILES := $(patsubst %,$(JDK_GEN_DIR)/%.h,$(JDK_GEN))
|
||||
JDK_STUB_CFILES := $(patsubst %,$(JDK_STUB_DIR)/%.c,$(JDK_GEN))
|
||||
|
||||
$(JDK_HEADER_CFILES): $(JDK_HEADER_CLASSFILES)
|
||||
$(JDK_STUB_CFILES): $(JDK_STUB_CLASSFILES)
|
||||
|
||||
export::
|
||||
@echo Generating/Updating JDK headers
|
||||
$(JAVAH) -d $(JDK_GEN_DIR) $(JDK_PACKAGE_CLASSES)
|
||||
@echo Generating/Updating JDK stubs
|
||||
$(JAVAH) -stubs -d $(JDK_STUB_DIR) $(JDK_PACKAGE_CLASSES)
|
||||
ifndef NO_MAC_JAVA_SHIT
|
||||
@if test ! -d $(CORE_DEPTH)/lib/mac/Java/; then \
|
||||
echo "!!! You need to have a ns/lib/mac/Java directory checked out."; \
|
||||
echo "!!! This allows us to automatically update generated files for the mac."; \
|
||||
echo "!!! If you see any modified files there, please check them in."; \
|
||||
fi
|
||||
@echo Generating/Updating JDK headers for the Mac
|
||||
$(JAVAH) -mac -d $(CORE_DEPTH)/lib/mac/Java/_gen $(JDK_PACKAGE_CLASSES)
|
||||
@echo Generating/Updating JDK stubs for the Mac
|
||||
$(JAVAH) -mac -stubs -d $(CORE_DEPTH)/lib/mac/Java/_stubs $(JDK_PACKAGE_CLASSES)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# JRI_GEN -- for generating "old style" JRI native methods
|
||||
#
|
||||
# Generate JRI Headers and Stubs into the 'jri' directory
|
||||
#
|
||||
# NOTE: For backwards compatibility, if $(NETLIBDEPTH) is defined,
|
||||
# replace $(CORE_DEPTH) with $(NETLIBDEPTH).
|
||||
#
|
||||
ifneq ($(JRI_GEN),)
|
||||
ifneq ($(JAVAH),)
|
||||
ifdef NSBUILDROOT
|
||||
INCLUDES += -I$(JRI_GEN_DIR) -I$(SOURCE_XP_DIR)
|
||||
else
|
||||
INCLUDES += -I$(JRI_GEN_DIR)
|
||||
endif
|
||||
|
||||
ifdef NETLIBDEPTH
|
||||
CORE_DEPTH := $(NETLIBDEPTH)
|
||||
endif
|
||||
|
||||
JRI_PACKAGE_CLASSES := $(JRI_GEN)
|
||||
JRI_PATH_CLASSES := $(subst .,/,$(JRI_PACKAGE_CLASSES))
|
||||
JRI_HEADER_CLASSFILES := $(patsubst %,$(JAVA_DESTPATH)/%.class,$(JRI_PATH_CLASSES))
|
||||
JRI_STUB_CLASSFILES := $(patsubst %,$(JAVA_DESTPATH)/%.class,$(JRI_PATH_CLASSES))
|
||||
JRI_HEADER_CFILES := $(patsubst %,$(JRI_GEN_DIR)/%.h,$(JRI_GEN))
|
||||
JRI_STUB_CFILES := $(patsubst %,$(JRI_GEN_DIR)/%.c,$(JRI_GEN))
|
||||
|
||||
$(JRI_HEADER_CFILES): $(JRI_HEADER_CLASSFILES)
|
||||
$(JRI_STUB_CFILES): $(JRI_STUB_CLASSFILES)
|
||||
|
||||
export::
|
||||
@echo Generating/Updating JRI headers
|
||||
$(JAVAH) -jri -d $(JRI_GEN_DIR) $(JRI_PACKAGE_CLASSES)
|
||||
@echo Generating/Updating JRI stubs
|
||||
$(JAVAH) -jri -stubs -d $(JRI_GEN_DIR) $(JRI_PACKAGE_CLASSES)
|
||||
ifndef NO_MAC_JAVA_SHIT
|
||||
@if test ! -d $(CORE_DEPTH)/lib/mac/Java/; then \
|
||||
echo "!!! You need to have a ns/lib/mac/Java directory checked out."; \
|
||||
echo "!!! This allows us to automatically update generated files for the mac."; \
|
||||
echo "!!! If you see any modified files there, please check them in."; \
|
||||
fi
|
||||
@echo Generating/Updating JRI headers for the Mac
|
||||
$(JAVAH) -jri -mac -d $(CORE_DEPTH)/lib/mac/Java/_jri $(JRI_PACKAGE_CLASSES)
|
||||
@echo Generating/Updating JRI stubs for the Mac
|
||||
$(JAVAH) -jri -mac -stubs -d $(CORE_DEPTH)/lib/mac/Java/_jri $(JRI_PACKAGE_CLASSES)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# JNI_GEN -- for generating JNI native methods
|
||||
#
|
||||
# Generate JNI Headers into the 'jni' directory
|
||||
#
|
||||
ifneq ($(JNI_GEN),)
|
||||
ifneq ($(JAVAH),)
|
||||
JNI_HEADERS := $(patsubst %,$(JNI_GEN_DIR)/%.h,$(JNI_GEN))
|
||||
|
||||
export::
|
||||
@if test ! -d $(JNI_GEN_DIR); then \
|
||||
echo $(JAVAH) -jni -d $(JNI_GEN_DIR) $(JNI_GEN); \
|
||||
$(JAVAH) -jni -d $(JNI_GEN_DIR) $(JNI_GEN); \
|
||||
else \
|
||||
echo "Checking for out of date header files" ; \
|
||||
cmd="perl $(CORE_DEPTH)/coreconf/jniregen.pl $(PERLARG) \
|
||||
-d $(JAVA_DESTPATH) $(JNI_GEN)"; \
|
||||
echo $$cmd; \
|
||||
list=`$$cmd`; \
|
||||
if test "$${list}x" != "x"; then \
|
||||
echo $(JAVAH) -jni -d $(JNI_GEN_DIR) $$list; \
|
||||
$(JAVAH) -jni -d $(JNI_GEN_DIR) $$list; \
|
||||
fi \
|
||||
fi
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# JMC_EXPORT -- for declaring which java classes are to be exported for jmc
|
||||
#
|
||||
ifneq ($(JMC_EXPORT),)
|
||||
JMC_EXPORT_PATHS := $(subst .,/,$(JMC_EXPORT))
|
||||
JMC_EXPORT_FILES := $(patsubst %,$(JAVA_DESTPATH)/$(PACKAGE)/%.class,$(JMC_EXPORT_PATHS))
|
||||
|
||||
#
|
||||
# We're doing NSINSTALL -t here (copy mode) because calling INSTALL will pick up
|
||||
# your NSDISTMODE and make links relative to the current directory. This is a
|
||||
# problem because the source isn't in the current directory:
|
||||
#
|
||||
export:: $(JMC_EXPORT_FILES) $(JMCSRCDIR)
|
||||
$(NSINSTALL) -t -m 444 $(JMC_EXPORT_FILES) $(JMCSRCDIR)
|
||||
endif
|
||||
|
||||
#
|
||||
# JMC_GEN -- for generating java modules
|
||||
#
|
||||
# Provide default export & install rules when using JMC_GEN
|
||||
#
|
||||
ifneq ($(JMC_GEN),)
|
||||
ifneq ($(JMC),)
|
||||
INCLUDES += -I$(JMC_GEN_DIR) -I.
|
||||
JMC_HEADERS := $(patsubst %,$(JMC_GEN_DIR)/%.h,$(JMC_GEN))
|
||||
JMC_STUBS := $(patsubst %,$(JMC_GEN_DIR)/%.c,$(JMC_GEN))
|
||||
JMC_OBJS := $(patsubst %,$(OBJDIR)/%$(OBJ_SUFFIX),$(JMC_GEN))
|
||||
|
||||
$(JMC_GEN_DIR)/M%.h: $(JMCSRCDIR)/%.class
|
||||
$(JMC) -d $(JMC_GEN_DIR) -interface $(JMC_GEN_FLAGS) $(?F:.class=)
|
||||
|
||||
$(JMC_GEN_DIR)/M%.c: $(JMCSRCDIR)/%.class
|
||||
$(JMC) -d $(JMC_GEN_DIR) -module $(JMC_GEN_FLAGS) $(?F:.class=)
|
||||
|
||||
$(OBJDIR)/M%$(OBJ_SUFFIX): $(JMC_GEN_DIR)/M%.h $(JMC_GEN_DIR)/M%.c
|
||||
@$(MAKE_OBJDIR)
|
||||
$(CC) -o $@ -c $(CFLAGS) $(JMC_GEN_DIR)/M$*.c
|
||||
|
||||
export:: $(JMC_HEADERS) $(JMC_STUBS)
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Copy each element of EXPORTS to $(SOURCE_XP_DIR)/public/$(MODULE)/
|
||||
#
|
||||
PUBLIC_EXPORT_DIR = $(SOURCE_XP_DIR)/public/$(MODULE)
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
PUBLIC_EXPORT_DIR = $(SOURCE_XP_DIR)/public/win16
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(EXPORTS),)
|
||||
$(PUBLIC_EXPORT_DIR)::
|
||||
@if test ! -d $@; then \
|
||||
echo Creating $@; \
|
||||
$(NSINSTALL) -D $@; \
|
||||
fi
|
||||
|
||||
export:: $(EXPORTS) $(PUBLIC_EXPORT_DIR)
|
||||
$(INSTALL) -m 444 $(EXPORTS) $(PUBLIC_EXPORT_DIR)
|
||||
endif
|
||||
|
||||
# Duplicate export rule for private exports, with different directories
|
||||
|
||||
PRIVATE_EXPORT_DIR = $(SOURCE_XP_DIR)/private/$(MODULE)
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
PRIVATE_EXPORT_DIR = $(SOURCE_XP_DIR)/public/win16
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(PRIVATE_EXPORTS),)
|
||||
$(PRIVATE_EXPORT_DIR)::
|
||||
@if test ! -d $@; then \
|
||||
echo Creating $@; \
|
||||
$(NSINSTALL) -D $@; \
|
||||
fi
|
||||
|
||||
private_export:: $(PRIVATE_EXPORTS) $(PRIVATE_EXPORT_DIR)
|
||||
$(INSTALL) -m 444 $(PRIVATE_EXPORTS) $(PRIVATE_EXPORT_DIR)
|
||||
else
|
||||
private_export::
|
||||
@echo There are no private exports.;
|
||||
endif
|
||||
|
||||
##########################################################################
|
||||
### RULES FOR RUNNING REGRESSION SUITE TESTS
|
||||
### REQUIRES 'REGRESSION_SPEC' TO BE SET TO THE NAME OF A REGRESSION SPECFILE
|
||||
### AND RESULTS_SUBDIR TO BE SET TO SOMETHING LIKE SECURITY/PKCS5
|
||||
##########################################################################
|
||||
|
||||
TESTS_DIR = $(RESULTS_DIR)/$(RESULTS_SUBDIR)/$(OS_CONFIG)$(CPU_TAG)$(COMPILER_TAG)$(IMPL_STRATEGY)
|
||||
|
||||
ifneq ($(REGRESSION_SPEC),)
|
||||
tests:: $(REGRESSION_SPEC)
|
||||
cd $(PLATFORM); \
|
||||
../$(SOURCE_MD_DIR)/bin/regress$(PROG_SUFFIX) specfile=../$(REGRESSION_SPEC) progress $(EXTRA_REGRESS_OPTIONS); \
|
||||
if test ! -d $(TESTS_DIR); then \
|
||||
echo Creating $(TESTS_DIR); \
|
||||
$(NSINSTALL) -D $(TESTS_DIR); \
|
||||
fi
|
||||
ifneq ($(BUILD_OPT),)
|
||||
$(NSINSTALL) -m 664 $(PLATFORM)/$(REGDATE).sum $(TESTS_DIR); \
|
||||
$(NSINSTALL) -m 664 $(PLATFORM)/$(REGDATE).htm $(TESTS_DIR); \
|
||||
echo "Please now make sure your results files are copied to $(TESTS_DIR), "; \
|
||||
echo "then run 'reporter specfile=$(RESULTS_DIR)/rptspec'"
|
||||
endif
|
||||
else
|
||||
tests::
|
||||
@echo Error: you didn't specify REGRESSION_SPEC in your manifest.mn file!;
|
||||
endif
|
||||
|
||||
|
||||
# Duplicate export rule for releases, with different directories
|
||||
|
||||
ifneq ($(EXPORTS),)
|
||||
$(SOURCE_RELEASE_XP_DIR)/include::
|
||||
@if test ! -d $@; then \
|
||||
echo Creating $@; \
|
||||
$(NSINSTALL) -D $@; \
|
||||
fi
|
||||
|
||||
release_export:: $(EXPORTS) $(SOURCE_RELEASE_XP_DIR)/include
|
||||
$(INSTALL) -m 444 $(EXPORTS) $(SOURCE_RELEASE_XP_DIR)/include
|
||||
endif
|
||||
|
||||
|
||||
|
||||
|
||||
################################################################################
|
||||
|
||||
-include $(DEPENDENCIES)
|
||||
|
||||
ifneq ($(OS_ARCH),WINNT)
|
||||
# Can't use sed because of its 4000-char line length limit, so resort to perl
|
||||
.DEFAULT:
|
||||
@perl -e ' \
|
||||
open(MD, "< $(DEPENDENCIES)"); \
|
||||
while (<MD>) { \
|
||||
if (m@ \.*/*$< @) { \
|
||||
$$found = 1; \
|
||||
last; \
|
||||
} \
|
||||
} \
|
||||
if ($$found) { \
|
||||
print "Removing stale dependency $< from $(DEPENDENCIES)\n"; \
|
||||
seek(MD, 0, 0); \
|
||||
$$tmpname = "$(OBJDIR)/fix.md" . $$$$; \
|
||||
open(TMD, "> " . $$tmpname); \
|
||||
while (<MD>) { \
|
||||
s@ \.*/*$< @ @; \
|
||||
if (!print TMD "$$_") { \
|
||||
unlink(($$tmpname)); \
|
||||
exit(1); \
|
||||
} \
|
||||
} \
|
||||
close(TMD); \
|
||||
if (!rename($$tmpname, "$(DEPENDENCIES)")) { \
|
||||
unlink(($$tmpname)); \
|
||||
} \
|
||||
} elsif ("$<" ne "$(DEPENDENCIES)") { \
|
||||
print "$(MAKE): *** No rule to make target $<. Stop.\n"; \
|
||||
exit(1); \
|
||||
}'
|
||||
endif
|
||||
|
||||
#############################################################################
|
||||
# X dependency system
|
||||
#############################################################################
|
||||
|
||||
ifdef MKDEPENDENCIES
|
||||
|
||||
# For Windows, $(MKDEPENDENCIES) must be -included before including rules.mk
|
||||
|
||||
$(MKDEPENDENCIES)::
|
||||
@$(MAKE_OBJDIR)
|
||||
touch $(MKDEPENDENCIES)
|
||||
chmod u+w $(MKDEPENDENCIES)
|
||||
#on NT, the preceeding touch command creates a read-only file !?!?!
|
||||
#which is why we have to explicitly chmod it.
|
||||
$(MKDEPEND) -p$(OBJDIR_NAME)/ -o'$(OBJ_SUFFIX)' -f$(MKDEPENDENCIES) \
|
||||
$(NOMD_CFLAGS) $(YOPT) $(CSRCS) $(CPPSRCS) $(ASFILES)
|
||||
|
||||
$(MKDEPEND):: $(MKDEPEND_DIR)/*.c $(MKDEPEND_DIR)/*.h
|
||||
cd $(MKDEPEND_DIR); $(MAKE)
|
||||
|
||||
ifdef OBJS
|
||||
depend:: $(MKDEPEND) $(MKDEPENDENCIES)
|
||||
else
|
||||
depend::
|
||||
endif
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
dependclean::
|
||||
rm -f $(MKDEPENDENCIES)
|
||||
+$(LOOP_OVER_DIRS)
|
||||
|
||||
#-include $(NSINSTALL_DIR)/$(OBJDIR)/depend.mk
|
||||
|
||||
else
|
||||
depend::
|
||||
endif
|
||||
|
||||
################################################################################
|
||||
# Special gmake rules.
|
||||
################################################################################
|
||||
|
||||
#
|
||||
# Re-define the list of default suffixes, so gmake won't have to churn through
|
||||
# hundreds of built-in suffix rules for stuff we don't need.
|
||||
#
|
||||
.SUFFIXES:
|
||||
.SUFFIXES: .out .a .ln .o .obj .c .cc .C .cpp .y .l .s .S .h .sh .i .pl .class .java .html .asm
|
||||
|
||||
#
|
||||
# Don't delete these files if we get killed.
|
||||
#
|
||||
.PRECIOUS: .java $(JDK_HEADERS) $(JDK_STUBS) $(JRI_HEADERS) $(JRI_STUBS) $(JMC_HEADERS) $(JMC_STUBS) $(JNI_HEADERS)
|
||||
|
||||
#
|
||||
# Fake targets. Always run these rules, even if a file/directory with that
|
||||
# name already exists.
|
||||
#
|
||||
.PHONY: all all_platforms alltags boot clean clobber clobber_all export install libs realclean release $(OBJDIR) $(DIRS)
|
||||
|
|
@ -0,0 +1,362 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# #
|
||||
# Parameters to this makefile (set these in this file): #
|
||||
# #
|
||||
# a) #
|
||||
# TARGETS -- the target to create #
|
||||
# (defaults to $LIBRARY $PROGRAM) #
|
||||
# b) #
|
||||
# DIRS -- subdirectories for make to recurse on #
|
||||
# (the 'all' rule builds $TARGETS $DIRS) #
|
||||
# c) #
|
||||
# CSRCS, CPPSRCS -- .c and .cpp files to compile #
|
||||
# (used to define $OBJS) #
|
||||
# d) #
|
||||
# PROGRAM -- the target program name to create from $OBJS #
|
||||
# ($OBJDIR automatically prepended to it) #
|
||||
# e) #
|
||||
# LIBRARY -- the target library name to create from $OBJS #
|
||||
# ($OBJDIR automatically prepended to it) #
|
||||
# f) #
|
||||
# JSRCS -- java source files to compile into class files #
|
||||
# (if you don't specify this it will default #
|
||||
# to *.java) #
|
||||
# g) #
|
||||
# PACKAGE -- the package to put the .class files into #
|
||||
# (e.g. netscape/applet) #
|
||||
# (NOTE: the default definition for this may be #
|
||||
# overridden if "jdk.mk" is included) #
|
||||
# h) #
|
||||
# JMC_EXPORT -- java files to be exported for use by JMC_GEN #
|
||||
# (this is a list of Class names) #
|
||||
# i) #
|
||||
# JRI_GEN -- files to run through javah to generate headers #
|
||||
# and stubs #
|
||||
# (output goes into the _jri sub-dir) #
|
||||
# j) #
|
||||
# JMC_GEN -- files to run through jmc to generate headers #
|
||||
# and stubs #
|
||||
# (output goes into the _jmc sub-dir) #
|
||||
# k) #
|
||||
# JNI_GEN -- files to run through javah to generate headers #
|
||||
# (output goes into the _jni sub-dir) #
|
||||
# #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# At this time, the CPU_TAG value is actually assigned.
|
||||
#
|
||||
|
||||
CPU_TAG =
|
||||
|
||||
#
|
||||
# When the processor is NOT 386-based on Windows NT, override the
|
||||
# value of $(CPU_TAG).
|
||||
#
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ifneq ($(CPU_ARCH),x386)
|
||||
CPU_TAG = _$(CPU_ARCH)
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Always set CPU_TAG on Linux.
|
||||
#
|
||||
ifeq ($(OS_ARCH), Linux)
|
||||
CPU_TAG = _$(CPU_ARCH)
|
||||
endif
|
||||
|
||||
#
|
||||
# At this time, the COMPILER_TAG value is actually assigned.
|
||||
#
|
||||
|
||||
ifndef COMPILER_TAG
|
||||
ifneq ($(DEFAULT_COMPILER), $(CC))
|
||||
#
|
||||
# Temporary define for the Client; to be removed when binary release is used
|
||||
#
|
||||
ifdef MOZILLA_CLIENT
|
||||
COMPILER_TAG =
|
||||
else
|
||||
COMPILER_TAG = _$(CC)
|
||||
endif
|
||||
else
|
||||
COMPILER_TAG =
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# At this time, a default value of $(CC) is assigned to MKPROG.
|
||||
#
|
||||
|
||||
ifeq ($(MKPROG),)
|
||||
MKPROG = $(CC)
|
||||
endif
|
||||
|
||||
#
|
||||
# This makefile contains rules for building the following kinds of
|
||||
# objects:
|
||||
# - (1) LIBRARY: a static (archival) library
|
||||
# - (2) SHARED_LIBRARY: a shared (dynamic link) library
|
||||
# - (3) IMPORT_LIBRARY: an import library, used only on Windows
|
||||
# - (4) PURE_LIBRARY: a library for Purify
|
||||
# - (5) PROGRAM: an executable binary
|
||||
#
|
||||
# NOTE: The names of libraries can be generated by simply specifying
|
||||
# LIBRARY_NAME (and LIBRARY_VERSION in the case of non-static libraries).
|
||||
#
|
||||
|
||||
ifdef LIBRARY_NAME
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
#
|
||||
# Win16 requires library names conforming to the 8.3 rule.
|
||||
# other platforms do not.
|
||||
#
|
||||
LIBRARY = $(OBJDIR)/$(LIBRARY_NAME).lib
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
SHARED_LIBRARY = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION)16$(JDK_DEBUG_SUFFIX).dll
|
||||
IMPORT_LIBRARY = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION)16$(JDK_DEBUG_SUFFIX).lib
|
||||
else
|
||||
SHARED_LIBRARY = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION)32$(JDK_DEBUG_SUFFIX).dll
|
||||
IMPORT_LIBRARY = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION)32$(JDK_DEBUG_SUFFIX).lib
|
||||
endif
|
||||
else
|
||||
LIBRARY = $(OBJDIR)/lib$(LIBRARY_NAME).$(LIB_SUFFIX)
|
||||
ifeq ($(OS_ARCH)$(OS_RELEASE), AIX4.1)
|
||||
SHARED_LIBRARY = $(OBJDIR)/lib$(LIBRARY_NAME)$(LIBRARY_VERSION)_shr$(JDK_DEBUG_SUFFIX).a
|
||||
else
|
||||
SHARED_LIBRARY = $(OBJDIR)/lib$(LIBRARY_NAME)$(LIBRARY_VERSION)$(JDK_DEBUG_SUFFIX).$(DLL_SUFFIX)
|
||||
endif
|
||||
|
||||
ifdef HAVE_PURIFY
|
||||
ifdef DSO_BACKEND
|
||||
PURE_LIBRARY = $(OBJDIR)/purelib$(LIBRARY_NAME)$(LIBRARY_VERSION)$(JDK_DEBUG_SUFFIX).$(DLL_SUFFIX)
|
||||
else
|
||||
PURE_LIBRARY = $(OBJDIR)/purelib$(LIBRARY_NAME).$(LIB_SUFFIX)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Common rules used by lots of makefiles...
|
||||
#
|
||||
|
||||
ifdef PROGRAM
|
||||
PROGRAM := $(addprefix $(OBJDIR)/, $(PROGRAM)$(JDK_DEBUG_SUFFIX)$(PROG_SUFFIX))
|
||||
endif
|
||||
|
||||
ifdef PROGRAMS
|
||||
PROGRAMS := $(addprefix $(OBJDIR)/, $(PROGRAMS:%=%$(JDK_DEBUG_SUFFIX)$(PROG_SUFFIX)))
|
||||
endif
|
||||
|
||||
ifndef TARGETS
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
TARGETS = $(LIBRARY) $(SHARED_LIBRARY) $(IMPORT_LIBRARY) $(PROGRAM)
|
||||
else
|
||||
TARGETS = $(LIBRARY) $(SHARED_LIBRARY)
|
||||
ifdef HAVE_PURIFY
|
||||
TARGETS += $(PURE_LIBRARY)
|
||||
endif
|
||||
TARGETS += $(PROGRAM)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef OBJS
|
||||
SIMPLE_OBJS = $(JRI_STUB_CFILES) \
|
||||
$(addsuffix $(OBJ_SUFFIX), $(JMC_GEN)) \
|
||||
$(CSRCS:.c=$(OBJ_SUFFIX)) \
|
||||
$(CPPSRCS:.cpp=$(OBJ_SUFFIX)) \
|
||||
$(ASFILES:$(ASM_SUFFIX)=$(OBJ_SUFFIX))
|
||||
OBJS = $(addprefix $(OBJDIR)/$(PROG_PREFIX), $(SIMPLE_OBJS))
|
||||
endif
|
||||
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
comma := ,
|
||||
empty :=
|
||||
space := $(empty) $(empty)
|
||||
W16OBJS := $(subst $(space),$(comma)$(space),$(strip $(OBJS)))
|
||||
W16TEMP = $(OS_LIBS) $(EXTRA_LIBS)
|
||||
ifeq ($(strip $(W16TEMP)),)
|
||||
W16LIBS =
|
||||
else
|
||||
W16LIBS := library $(subst $(space),$(comma)$(space),$(strip $(W16TEMP)))
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(OS_ARCH),WINNT)
|
||||
ifneq ($(OS_TARGET), WIN16)
|
||||
OBJS += $(RES)
|
||||
endif
|
||||
MAKE_OBJDIR = $(INSTALL) -D $(OBJDIR)
|
||||
else
|
||||
define MAKE_OBJDIR
|
||||
if test ! -d $(@D); then rm -rf $(@D); $(NSINSTALL) -D $(@D); fi
|
||||
endef
|
||||
endif
|
||||
|
||||
ifndef PACKAGE
|
||||
PACKAGE = .
|
||||
endif
|
||||
|
||||
ALL_TRASH := $(TARGETS) $(OBJS) $(OBJDIR) LOGS TAGS $(GARBAGE) \
|
||||
$(NOSUCHFILE) $(JDK_HEADER_CFILES) $(JDK_STUB_CFILES) \
|
||||
$(JRI_HEADER_CFILES) $(JRI_STUB_CFILES) $(JNI_HEADERS) $(JMC_STUBS) \
|
||||
$(JMC_HEADERS) $(JMC_EXPORT_FILES) so_locations \
|
||||
_gen _jmc _jri _jni _stubs \
|
||||
$(wildcard $(JAVA_DESTPATH)/$(PACKAGE)/*.class)
|
||||
|
||||
ifdef JDIRS
|
||||
ALL_TRASH += $(addprefix $(JAVA_DESTPATH)/,$(JDIRS))
|
||||
endif
|
||||
|
||||
ifdef NSBUILDROOT
|
||||
JDK_GEN_DIR = $(SOURCE_XP_DIR)/_gen
|
||||
JMC_GEN_DIR = $(SOURCE_XP_DIR)/_jmc
|
||||
JNI_GEN_DIR = $(SOURCE_XP_DIR)/_jni
|
||||
JRI_GEN_DIR = $(SOURCE_XP_DIR)/_jri
|
||||
JDK_STUB_DIR = $(SOURCE_XP_DIR)/_stubs
|
||||
else
|
||||
JDK_GEN_DIR = _gen
|
||||
JMC_GEN_DIR = _jmc
|
||||
JNI_GEN_DIR = _jni
|
||||
JRI_GEN_DIR = _jri
|
||||
JDK_STUB_DIR = _stubs
|
||||
endif
|
||||
|
||||
#
|
||||
# If this is an "official" build, try to build everything.
|
||||
# I.e., don't exit on errors.
|
||||
#
|
||||
|
||||
ifdef BUILD_OFFICIAL
|
||||
EXIT_ON_ERROR = +e
|
||||
CLICK_STOPWATCH = date
|
||||
else
|
||||
EXIT_ON_ERROR = -e
|
||||
CLICK_STOPWATCH = true
|
||||
endif
|
||||
|
||||
ifdef REQUIRES
|
||||
ifeq ($(OS_TARGET),WIN16)
|
||||
INCLUDES += -I$(SOURCE_XP_DIR)/public/win16
|
||||
else
|
||||
MODULE_INCLUDES := $(addprefix -I$(SOURCE_XP_DIR)/public/, $(REQUIRES))
|
||||
INCLUDES += $(MODULE_INCLUDES)
|
||||
ifeq ($(MODULE), sectools)
|
||||
PRIVATE_INCLUDES := $(addprefix -I$(SOURCE_XP_DIR)/private/, $(REQUIRES))
|
||||
INCLUDES += $(PRIVATE_INCLUDES)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef SYSTEM_INCL_DIR
|
||||
YOPT = -Y$(SYSTEM_INCL_DIR)
|
||||
endif
|
||||
|
||||
ifdef DIRS
|
||||
LOOP_OVER_DIRS = \
|
||||
@for directory in $(DIRS); do \
|
||||
if test -d $$directory; then \
|
||||
set $(EXIT_ON_ERROR); \
|
||||
echo "cd $$directory; $(MAKE) $@"; \
|
||||
$(MAKE) -C $$directory $@; \
|
||||
set +e; \
|
||||
else \
|
||||
echo "Skipping non-directory $$directory..."; \
|
||||
fi; \
|
||||
$(CLICK_STOPWATCH); \
|
||||
done
|
||||
endif
|
||||
|
||||
|
||||
|
||||
# special stuff for tests rule in rules.mk
|
||||
|
||||
ifneq ($(OS_ARCH),WINNT)
|
||||
REGDATE = $(subst \ ,, $(shell perl $(CORE_DEPTH)/$(MODULE)/scripts/now))
|
||||
else
|
||||
REGCOREDEPTH = $(subst \\,/,$(CORE_DEPTH))
|
||||
REGDATE = $(subst \ ,, $(shell perl $(CORE_DEPTH)/$(MODULE)/scripts/now))
|
||||
endif
|
||||
|
||||
#
|
||||
# export control policy patcher program and arguments
|
||||
#
|
||||
|
||||
PLCYPATCH = $(SOURCE_BIN_DIR)/plcypatch$(PROG_SUFFIX)
|
||||
|
||||
DOMESTIC_POLICY = -us
|
||||
EXPORT_POLICY = -ex
|
||||
FRANCE_POLICY = -fr
|
||||
|
||||
ifeq ($(POLICY), domestic)
|
||||
PLCYPATCH_ARGS = $(DOMESTIC_POLICY)
|
||||
else
|
||||
ifeq ($(POLICY), export)
|
||||
PLCYPATCH_ARGS = $(EXPORT_POLICY)
|
||||
else
|
||||
ifeq ($(POLICY), france)
|
||||
PLCYPATCH_ARGS = $(FRANCE_POLICY)
|
||||
else
|
||||
PLCYPATCH_ARGS =
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Compressor for executables and DLLs on Win32. Reduces download footprint
|
||||
# and helps solve some export control problem.
|
||||
#
|
||||
# PKLIT32C Program must be installed to be used. Path below is the default
|
||||
# installation path. No site license is available for this program.
|
||||
#
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ifdef BUILD_OPT
|
||||
|
||||
PKLITE = $(shell which PKLIT32C.EXE)
|
||||
PKLITE_ARGS = -is.rdata
|
||||
|
||||
#COMPRESS_TARGET = \
|
||||
# @if test -f $(PKLITE); then \
|
||||
# echo $(PKLITE) $(PKLITE_ARGS) $@; \
|
||||
# $(PKLITE) $(PKLITE_ARGS) $@; fi
|
||||
ifneq ($(PKLITE), )
|
||||
COMPRESS_TARGET = pklit32c.exe $(PKLITE_ARGS)
|
||||
endif
|
||||
|
||||
endif
|
||||
endif
|
|
@ -0,0 +1,174 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master <component>-specific source import/export directories #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# <user_source_tree> master import/export directory prefix
|
||||
#
|
||||
|
||||
SOURCE_PREFIX = $(CORE_DEPTH)/dist
|
||||
ifdef MOZILLA_SECURITY_BUILD
|
||||
DIST = $(CORE_DEPTH)/../dist
|
||||
else
|
||||
ifdef MOZILLA_CLIENT
|
||||
SOURCE_PREFIX = $(CORE_DEPTH)/../mozilla/dist
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
#
|
||||
# <user_source_tree> cross-platform (xp) master import/export directory
|
||||
#
|
||||
|
||||
SOURCE_XP_DIR = $(SOURCE_PREFIX)
|
||||
|
||||
#
|
||||
# <user_source_tree> cross-platform (xp) import/export directories
|
||||
#
|
||||
|
||||
SOURCE_CLASSES_DIR = $(SOURCE_XP_DIR)/classes
|
||||
SOURCE_CLASSES_DBG_DIR = $(SOURCE_XP_DIR)/classes_DBG
|
||||
SOURCE_XPHEADERS_DIR = $(SOURCE_XP_DIR)/public/$(MODULE)
|
||||
SOURCE_XPPRIVATE_DIR = $(SOURCE_XP_DIR)/private/$(MODULE)
|
||||
|
||||
ifdef BUILD_OPT
|
||||
IMPORT_XPCLASS_DIR = $(SOURCE_CLASSES_DIR)
|
||||
else
|
||||
IMPORT_XPCLASS_DIR = $(SOURCE_CLASSES_DBG_DIR)
|
||||
endif
|
||||
|
||||
#
|
||||
# <user_source_tree> machine-dependent (md) master import/export directory
|
||||
#
|
||||
|
||||
SOURCE_MD_DIR = $(SOURCE_PREFIX)/$(PLATFORM)
|
||||
|
||||
#
|
||||
# <user_source_tree> machine-dependent (md) import/export directories
|
||||
#
|
||||
|
||||
SOURCE_BIN_DIR = $(SOURCE_MD_DIR)/bin
|
||||
SOURCE_LIB_DIR = $(SOURCE_MD_DIR)/lib
|
||||
SOURCE_MDHEADERS_DIR = $(SOURCE_MD_DIR)/include
|
||||
|
||||
#######################################################################
|
||||
# Master <component>-specific source release directories and files #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# <user_source_tree> source-side master release directory prefix
|
||||
# NOTE: export control policy enforced for XP and MD files released to
|
||||
# the staging area
|
||||
#
|
||||
|
||||
ifeq ($(POLICY), domestic)
|
||||
SOURCE_RELEASE_PREFIX = $(SOURCE_PREFIX)/release/domestic
|
||||
else
|
||||
ifeq ($(POLICY), export)
|
||||
SOURCE_RELEASE_PREFIX = $(SOURCE_PREFIX)/release/export
|
||||
else
|
||||
ifeq ($(POLICY), france)
|
||||
SOURCE_RELEASE_PREFIX = $(SOURCE_PREFIX)/release/france
|
||||
else
|
||||
#We shouldn't have to put another directory under here, but without it the perl
|
||||
#script for releasing doesn't find the directory. It thinks it doesn't exist.
|
||||
#So we're adding this no-policy directory so that the script for releasing works
|
||||
#in all casese when policy is not set. This doesn't affect where the final jar
|
||||
#files land, only where they are placed in the local tree when building the jar
|
||||
#files. When there is no policy, the jar files will still land in
|
||||
#<dist>/<module>/<date>/<platform> like they used to.
|
||||
SOURCE_RELEASE_PREFIX = $(SOURCE_PREFIX)/release/no-policy
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# <user_source_tree> cross-platform (xp) source-side master release directory
|
||||
#
|
||||
|
||||
SOURCE_RELEASE_XP_DIR = $(SOURCE_RELEASE_PREFIX)
|
||||
|
||||
#
|
||||
# <user_source_tree> cross-platform (xp) source-side release directories
|
||||
#
|
||||
|
||||
SOURCE_RELEASE_CLASSES_DIR = classes
|
||||
SOURCE_RELEASE_CLASSES_DBG_DIR = classes_DBG
|
||||
SOURCE_RELEASE_XPHEADERS_DIR = include
|
||||
|
||||
#
|
||||
# <user_source_tree> cross-platform (xp) JAR source-side release files
|
||||
#
|
||||
|
||||
XPCLASS_JAR = xpclass.jar
|
||||
XPCLASS_DBG_JAR = xpclass_dbg.jar
|
||||
XPHEADER_JAR = xpheader.jar
|
||||
|
||||
ifdef BUILD_OPT
|
||||
IMPORT_XPCLASS_JAR = $(XPCLASS_JAR)
|
||||
else
|
||||
IMPORT_XPCLASS_JAR = $(XPCLASS_DBG_JAR)
|
||||
endif
|
||||
|
||||
#
|
||||
# <user_source_tree> machine-dependent (md) source-side master release directory
|
||||
#
|
||||
|
||||
SOURCE_RELEASE_MD_DIR = $(PLATFORM)
|
||||
|
||||
#
|
||||
# <user_source_tree> machine-dependent (md) source-side release directories
|
||||
#
|
||||
|
||||
SOURCE_RELEASE_BIN_DIR = $(PLATFORM)/bin
|
||||
SOURCE_RELEASE_LIB_DIR = $(PLATFORM)/lib
|
||||
SOURCE_RELEASE_MDHEADERS_DIR = $(PLATFORM)/include
|
||||
SOURCE_RELEASE_SPEC_DIR = $(SOURCE_RELEASE_MD_DIR)
|
||||
|
||||
#
|
||||
# <user_source_tree> machine-dependent (md) JAR/tar source-side release files
|
||||
#
|
||||
|
||||
MDBINARY_JAR = mdbinary.jar
|
||||
MDHEADER_JAR = mdheader.jar
|
||||
|
||||
|
||||
# Where to put the results
|
||||
|
||||
ifneq ($(RESULTS_DIR),)
|
||||
RESULTS_DIR = $(RELEASE_TREE)/sectools/results
|
||||
endif
|
||||
|
|
@ -0,0 +1,132 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" suffixes #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Object suffixes
|
||||
#
|
||||
|
||||
ifndef OBJ_SUFFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
OBJ_SUFFIX = .obj
|
||||
else
|
||||
OBJ_SUFFIX = .o
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Assembler source suffixes
|
||||
#
|
||||
|
||||
ifndef ASM_SUFFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
ASM_SUFFIX = .asm
|
||||
else
|
||||
ASM_SUFFIX = .s
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Library suffixes
|
||||
#
|
||||
|
||||
STATIC_LIB_EXTENSION =
|
||||
|
||||
ifndef DYNAMIC_LIB_EXTENSION
|
||||
ifeq ($(OS_ARCH)$(OS_RELEASE), AIX4.1)
|
||||
DYNAMIC_LIB_EXTENSION = _shr
|
||||
else
|
||||
DYNAMIC_LIB_EXTENSION =
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
ifndef STATIC_LIB_SUFFIX
|
||||
STATIC_LIB_SUFFIX = .$(LIB_SUFFIX)
|
||||
endif
|
||||
|
||||
|
||||
ifndef DYNAMIC_LIB_SUFFIX
|
||||
DYNAMIC_LIB_SUFFIX = .$(DLL_SUFFIX)
|
||||
endif
|
||||
|
||||
|
||||
ifndef IMPORT_LIB_SUFFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
IMPORT_LIB_SUFFIX = .$(LIB_SUFFIX)
|
||||
else
|
||||
IMPORT_LIB_SUFFIX =
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
ifndef PURE_LIB_SUFFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
PURE_LIB_SUFFIX =
|
||||
else
|
||||
ifdef DSO_BACKEND
|
||||
PURE_LIB_SUFFIX = .$(DLL_SUFFIX)
|
||||
else
|
||||
PURE_LIB_SUFFIX = .$(LIB_SUFFIX)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
ifndef STATIC_LIB_SUFFIX_FOR_LINKING
|
||||
STATIC_LIB_SUFFIX_FOR_LINKING = $(STATIC_LIB_SUFFIX)
|
||||
endif
|
||||
|
||||
|
||||
ifndef DYNAMIC_LIB_SUFFIX_FOR_LINKING
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
DYNAMIC_LIB_SUFFIX_FOR_LINKING = $(IMPORT_LIB_SUFFIX)
|
||||
else
|
||||
DYNAMIC_LIB_SUFFIX_FOR_LINKING = $(DYNAMIC_LIB_SUFFIX)
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# Program suffixes
|
||||
#
|
||||
|
||||
ifndef PROG_SUFFIX
|
||||
ifeq ($(OS_ARCH), WINNT)
|
||||
PROG_SUFFIX = .exe
|
||||
else
|
||||
PROG_SUFFIX =
|
||||
endif
|
||||
endif
|
|
@ -0,0 +1,114 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Master "Core Components" file system "release" prefixes #
|
||||
#######################################################################
|
||||
|
||||
# RELEASE_TREE = $(CORE_DEPTH)/../coredist
|
||||
|
||||
|
||||
ifndef RELEASE_TREE
|
||||
ifdef BUILD_SHIP
|
||||
ifdef USE_SHIPS
|
||||
RELEASE_TREE = $(BUILD_SHIP)
|
||||
else
|
||||
RELEASE_TREE = /m/dist
|
||||
endif
|
||||
else
|
||||
RELEASE_TREE = /m/dist
|
||||
endif
|
||||
ifeq ($(OS_TARGET), WINNT)
|
||||
ifdef BUILD_SHIP
|
||||
ifdef USE_SHIPS
|
||||
RELEASE_TREE = $(NTBUILD_SHIP)
|
||||
else
|
||||
RELEASE_TREE = //helium/dist
|
||||
endif
|
||||
else
|
||||
RELEASE_TREE = //helium/dist
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(OS_TARGET), WIN95)
|
||||
ifdef BUILD_SHIP
|
||||
ifdef USE_SHIPS
|
||||
RELEASE_TREE = $(NTBUILD_SHIP)
|
||||
else
|
||||
RELEASE_TREE = //helium/dist
|
||||
endif
|
||||
else
|
||||
RELEASE_TREE = //helium/dist
|
||||
endif
|
||||
endif
|
||||
ifeq ($(OS_TARGET), WIN16)
|
||||
ifdef BUILD_SHIP
|
||||
ifdef USE_SHIPS
|
||||
RELEASE_TREE = $(NTBUILD_SHIP)
|
||||
else
|
||||
RELEASE_TREE = //helium/dist
|
||||
endif
|
||||
else
|
||||
RELEASE_TREE = //helium/dist
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# NOTE: export control policy enforced for XP and MD files
|
||||
# released to the binary release tree
|
||||
#
|
||||
|
||||
ifeq ($(POLICY), domestic)
|
||||
RELEASE_XP_DIR = domestic
|
||||
RELEASE_MD_DIR = domestic/$(PLATFORM)
|
||||
else
|
||||
ifeq ($(POLICY), export)
|
||||
RELEASE_XP_DIR = export
|
||||
RELEASE_MD_DIR = export/$(PLATFORM)
|
||||
else
|
||||
ifeq ($(POLICY), france)
|
||||
RELEASE_XP_DIR = france
|
||||
RELEASE_MD_DIR = france/$(PLATFORM)
|
||||
else
|
||||
RELEASE_XP_DIR =
|
||||
RELEASE_MD_DIR = $(PLATFORM)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
REPORTER_TREE = $(subst \,\\,$(RELEASE_TREE))
|
||||
|
||||
IMPORT_XP_DIR =
|
||||
IMPORT_MD_DIR = $(PLATFORM)
|
|
@ -0,0 +1,103 @@
|
|||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
#######################################################################
|
||||
# Build master "Core Components" release version directory name #
|
||||
#######################################################################
|
||||
|
||||
#
|
||||
# Always set CURRENT_VERSION_SYMLINK to the <current> symbolic link.
|
||||
#
|
||||
|
||||
CURRENT_VERSION_SYMLINK = current
|
||||
|
||||
|
||||
#
|
||||
# For the sake of backwards compatibility (*sigh*) ...
|
||||
#
|
||||
|
||||
ifndef VERSION
|
||||
ifdef BUILD_NUM
|
||||
VERSION = $(BUILD_NUM)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef RELEASE_VERSION
|
||||
ifdef BUILD_NUM
|
||||
RELEASE_VERSION = $(BUILD_NUM)
|
||||
endif
|
||||
endif
|
||||
|
||||
#
|
||||
# If VERSION has still NOT been set on the command line,
|
||||
# as an environment variable, by the individual Makefile, or
|
||||
# by the <component>-specific "version.mk" file, set VERSION equal
|
||||
# to $(CURRENT_VERSION_SYMLINK).
|
||||
|
||||
ifndef VERSION
|
||||
VERSION = $(CURRENT_VERSION_SYMLINK)
|
||||
endif
|
||||
|
||||
# If RELEASE_VERSION has still NOT been set on the command line,
|
||||
# as an environment variable, by the individual Makefile, or
|
||||
# by the <component>-specific "version.mk" file, automatically
|
||||
# generate the next available version number via a perl script.
|
||||
#
|
||||
|
||||
ifndef RELEASE_VERSION
|
||||
RELEASE_VERSION =
|
||||
endif
|
||||
|
||||
#
|
||||
# Set <component>-specific versions for compiliation and linkage.
|
||||
#
|
||||
|
||||
ifndef JAVA_VERSION
|
||||
JAVA_VERSION = $(CURRENT_VERSION_SYMLINK)
|
||||
endif
|
||||
|
||||
ifndef NETLIB_VERSION
|
||||
NETLIB_VERSION = $(CURRENT_VERSION_SYMLINK)
|
||||
endif
|
||||
|
||||
ifndef NSPR_VERSION
|
||||
NSPR_VERSION = $(CURRENT_VERSION_SYMLINK)
|
||||
endif
|
||||
|
||||
ifndef SECTOOLS_VERSION
|
||||
SECTOOLS_VERSION = $(CURRENT_VERSION_SYMLINK)
|
||||
endif
|
||||
|
||||
ifndef SECURITY_VERSION
|
||||
SECURITY_VERSION = $(CURRENT_VERSION_SYMLINK)
|
||||
endif
|
|
@ -0,0 +1,76 @@
|
|||
#!/usr/sbin/perl
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (the "License"); you may not use this file
|
||||
# except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is the Netscape security libraries.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1994-2000 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the
|
||||
# terms of the GNU General Public License Version 2 or later (the
|
||||
# "GPL"), in which case the provisions of the GPL are applicable
|
||||
# instead of those above. If you wish to allow use of your
|
||||
# version of this file only under the terms of the GPL and not to
|
||||
# allow others to use your version of this file under the MPL,
|
||||
# indicate your decision by deleting the provisions above and
|
||||
# replace them with the notice and other provisions required by
|
||||
# the GPL. If you do not delete the provisions above, a recipient
|
||||
# may use your version of this file under either the MPL or the
|
||||
# GPL.
|
||||
#
|
||||
|
||||
# Compose lowercase alphabet
|
||||
@alphabet = ( "a", "b", "c", "d", "e", "f", "g", "h",
|
||||
"i", "j", "k", "l", "m", "n", "o", "p",
|
||||
"q", "r", "s", "t", "u", "v", "w", "x",
|
||||
"y", "z" );
|
||||
|
||||
# Compute year
|
||||
$year = (localtime)[5] + 1900;
|
||||
|
||||
# Compute month
|
||||
$month = (localtime)[4] + 1;
|
||||
|
||||
# Compute day
|
||||
$day = (localtime)[3];
|
||||
|
||||
# Compute base build number
|
||||
$version = sprintf( "%d%02d%02d", $year, $month, $day );
|
||||
$directory = sprintf( "%s\/%s\/%d%02d%02d", $ARGV[0], $ARGV[1], $year, $month, $day );
|
||||
|
||||
# Print out the name of the first version directory which does not exist
|
||||
#if( ! -e $directory )
|
||||
#{
|
||||
print $version;
|
||||
#}
|
||||
#else
|
||||
#{
|
||||
# # Loop through combinations
|
||||
# foreach $ch1 (@alphabet)
|
||||
# {
|
||||
# foreach $ch2 (@alphabet)
|
||||
# {
|
||||
# $version = sprintf( "%d%02d%02d%s%s", $year, $month, $day, $ch1, $ch2 );
|
||||
# $directory = sprintf( "%s\/%s\/%d%02d%02d%s%s", $ARGV[0], $ARGV[1], $year, $month, $day, $ch1, $ch2 );
|
||||
# if( ! -e $directory )
|
||||
# {
|
||||
# print STDOUT $version;
|
||||
# exit;
|
||||
# }
|
||||
# }
|
||||
# }
|
||||
#}
|
||||
|
Загрузка…
Ссылка в новой задаче