# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (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.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# Defines for example NSAPI programs running under SOLARIS

# Choose between the settings for gcc or Sun Studio compiler

# gcc
# If you get relocation errors, try:
#   1. compiling with Sun's cc
#   2. statically linking with libgcc
#   3. Adjusting LD_LIBRARY_PATH to grab libgcc_s
CC=gcc
ifeq (gcc,$(CC))
# For 64 Bit builds, add "-m64" to EXTRA_CFLAGS
CFLAGS+=-fPIC -pthread
LDFLAGS=-shared
else
# For 64 Bit builds, add "-m64" to EXTRA_CFLAGS
CFLAGS+=-O -Xa -KPIC -mt
LDFLAGS=-G -dy
endif

# Change this according to location where on installed the server.
# Don't forget to do the ./configure --enable-netscape=/opt/SUNWwbsvr/plugins
# before doing gmake -f Makefile.solaris

CC_CMD=$(CC) $(CFLAGS) $(EXTRA_CFLAGS) \
	-DNET_SSL -DSOLARIS -D_REENTRANT -DXP_UNIX -DMCC_HTTPD -DSPAPI20 -DJK_NSAPI -DHAVE_CONFIG_H

LD_SHAREDCMD=$(CC) $(LDFLAGS) $(CFLAGS) $(EXTRA_CFLAGS)

all:

prepare:

OS_TYPE=solaris
INCLUDEDIR=$(IPLANET_HOME)/include
JK_DIR=../common
VPATH=.:$(JK_DIR)

JK_OBJS = ap_snprintf.o \
	jk_md5.o \
	jk_ajp12_worker.o \
	jk_msg_buff.o \
	jk_ajp13.o \
	jk_ajp13_worker.o \
	jk_pool.o \
	jk_ajp14.o \
	jk_shm.o \
	jk_ajp14_worker.o \
	jk_sockbuf.o \
	jk_ajp_common.o \
	jk_status.o \
	jk_connect.o \
	jk_uri_worker_map.o \
	jk_context.o  \
	jk_url.o \
	jk_util.o \
	jk_lb_worker.o \
	jk_worker.o \
	jk_map.o


PLUGIN_OBJ = jk_nsapi_plugin.o

INCLUDE_FLAGS=	-I$(JK_DIR) -I$(INCLUDEDIR) -I$(INCLUDEDIR)/base \
		-I$(INCLUDEDIR)/frame

all: nsapi_redirector.so


nsapi_redirector.so: $(JK_OBJS) $(PLUGIN_OBJ)
	$(LD_SHAREDCMD) $(JK_OBJS) $(PLUGIN_OBJ) -o nsapi_redirector.so $(EXTRA_LDDEFINES)

clean:
	rm -f *.o nsapi_redirector.so $(JK_OBJS)
	rm -f $(JK_DIR)/*.o

%.o : %.c
	$(CC_CMD) $(INCLUDE_FLAGS) -c $<
