# 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 Linux # 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 # For 64 Bit builds, add "-m64" to EXTRA_CFLAGS EXTRA_CFLAGS=-fPIC -pthread LDFLAGS=-shared CC_CMD=$(CC) $(CFLAGS) $(EXTRA_CFLAGS) \ -DNET_SSL -DSOLARIS -D_REENTRANT -DXP_UNIX -DMCC_HTTPD -DSPAPI20 -DJK_NSAPI LD_SHAREDCMD=$(CC) $(LDFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) OS_TYPE=linux INCLUDEDIR=$(IPLANET_HOME)/include JAVA_INCLUDE=$(JAVA_HOME)/include JK_DIR=../common VPATH=.:$(JK_DIR) JK_SRCS = $(shell \ls $(JK_DIR)/*.c) JK_OBJECTS = $(patsubst $(JK_DIR)/%.c,%.o,$(JK_SRCS)) JK_JNI_OBJECTS = jk_jni_worker.o jk_nwmain.o JK_OBJS = $(filter-out $(JK_JNI_OBJECTS),$(JK_OBJECTS)) PLUGIN_OBJ = jk_nsapi_plugin.o INCLUDE_FLAGS= -I$(JK_DIR) -I$(INCLUDEDIR) -I$(INCLUDEDIR)/base \ -I$(INCLUDEDIR)/frame -I$(JAVA_INCLUDE) -I$(JAVA_INCLUDE)/$(OS_TYPE) 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) %.o : %.c $(CC_CMD) $(INCLUDE_FLAGS) -c $<