1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167
|
#
# The contents of this file are subject to the AOLserver 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://aolserver.com.
#
# 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.
#
# Alternatively, the contents of this file may be used under the terms
# of the GNU General Public License (the "GPL"), in which case the
# provisions of 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
# License, 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 License or the GPL.
#
# Copyright (C) 2001-2003 Scott S. Goodwin
#
# $Header: /cvsroot/aolserver/nsopenssl/Makefile,v 1.41 2004/01/19 19:55:54 scottg Exp $
#
# XXX AOLserver 3.x defines this, but AOLserver 4.x uses the install binary
# XXX instead. We'll need to update all the modules to use install
CP = /bin/cp -fp
ifdef INST
NSHOME ?= $(INST)
else
NSHOME ?= ../aolserver
endif
#
# Version number used in release tags. Valid VERs are "1.1c", "2.1",
# "2.2beta7". VER "1.1c" will be translated into "v1_1c" by this Makefile.
#
VER_ = $(subst .,_,$(VER))
MODNAME = nsopenssl
#LIB = nsopenssl
#LIBOBJS = sslcontext.o ssl.o tclcmds.o
#LIBLIBS = -lssl -lcrypto
MOD = nsopenssl.so
OBJS = nsopenssl.o sslcontext.o ssl.o tclcmds.o x509.o
HDRS = nsopenssl.h
MODLIBS = -lssl -lcrypto
TCLMOD = https.tcl
# XXX take out the -g for production
CFLAGS += -g
#
# Extra libraries required by your module (-L and -l go here)
#
# Add static compilation ability, per grax3272
#MODLIBS = -L$(OPENSSL)/lib ../openssl-0.9.6g/libssl.a ../openssl-0.9.6g/libcrypto.a#-lssl -lcrypto
#
# Compiler flags required by your module (-I for external headers goes here).
#
# Kerberos headers are included in case your OpenSSL library was built with
# Kerberos support. This is generally true on RedHat 9 and possibly Fedora
# Core. If OPENSSL_NO_KRB5 is define in <openssl/opensslconf.h> then OpenSSL
# *was not* compiled with Kerberos support.
#
CFLAGS += -I/usr/include/openssl -I/usr/kerberos/include
#
# The common Makefile defined by AOLserver for making modules
#
include /usr/lib/aolserver4/Makefile.module
#
# Help the poor developer
#
help:
@echo "**"
@echo "** DEVELOPER HELP FOR THIS $(MODNAME)"
@echo "**"
@echo "** make tag VER=X.Y"
@echo "** Tags the module CVS code with the given tag."
@echo "** You can tag the CVS copy at any time, but follow the rules."
@echo "** VER must be of the form:"
@echo "** X.Y"
@echo "** X.YbetaN"
@echo "** You should browse CVS at SF to find the latest tag."
@echo "**"
@echo "** make file-release VER=X.Y"
@echo "** Checks out the code for the given tag from CVS."
@echo "** The result will be a releaseable tar.gz file of"
@echo "** the form: module-X.Y.tar.gz."
@echo "**"
#
# Tag the code in CVS right now
#
tag:
@if [ "$$VER" = "" ]; then echo 1>&2 "VER must be set to version number!"; exit 1; fi
cvs rtag v$(VER_) $(MODNAME)
#
# Create a distribution file release
#
file-release:
@if [ "$$VER" = "" ]; then echo 1>&2 "VER must be set to version number!"; exit 1; fi
rm -rf work
mkdir work
cd work && cvs -d :pserver:anonymous@cvs.aolserver.sourceforge.net:/cvsroot/aolserver co -r v$(VER_) $(MODNAME)
mv work/$(MODNAME) work/$(MODNAME)-$(VER)
(cd work && tar cvf - $(MODNAME)-$(VER)) | gzip -9 > $(MODNAME)-$(VER).tar.gz
rm -rf work
# XXX alter this to work with sed or tcl instead of perl
# perl -pi -e 's/\@VER\@/$(VER)/g' work/nscache/index.html work/nscache/tclcache.c
#
# Check to see that the OPENSSL variable has been set
#
#.PHONY: check-env
#nsopenssl.h: check-env
#check-env:
# @if [ "$(OPENSSL)" = "" ]; then \
# echo "** "; \
# echo "** OPENSSL variable not set."; \
# echo "** nsopenssl.so will not be built."; \
# echo "** Usage: make OPENSSL=/path/to/openssl"; \
# echo "** Usage: make install OPENSSL=/path/to/openssl INST=/path/to/aolserver"; \
# echo "** "; \
# exit 1; \
# fi
#
# This overrides the install directive in $(NSHOME)/include/Makefile.module because we
# have a Tcl module (https.tcl) to install as well.
#
install: all
$(RM) $(INSTBIN)/$(MOD)
$(CP) $(MOD) $(INSTBIN)
$(MKDIR) $(INSTTCL)
$(CP) $(TCLMOD) $(INSTTCL)
## NOTES #################################################################################
# Solaris users *might* need the following,
# but you'll need to modify it to point to where
# your libgcc.a lives. Replace the MODLIBS above with
# this:
#
# MODLIBS = -L$(OPENSSL)/lib -lssl -lcrypto \
# -L/usr/local/products/gcc-2.95/lib/gcc-lib/sparc-sun-solaris2.5.1/2.95 -lgcc
# For development purposes, put the GCCOPT above somewhere
# to turn off 'no-unused' so gcc will report unused funcs
# and variables.
#
# GCCOPT = $(GCCOPTIMIZE) -fPIC -Wall
|