qse/ase/awk/makefile.lnx.gcc

45 lines
890 B
Plaintext
Raw Normal View History

2007-01-18 08:54:05 +00:00
OUT = libaseawk
C_SRCS = awk.c err.c tree.c str.c tab.c map.c parse.c \
run.c rec.c val.c func.c misc.c extio.c rex.c
JNI_SRCS = jni.c
JAVA_SRCS = Exception.java Extio.java Awk.java StdAwk.java
C_OBJS = $(C_SRCS:.c=.o)
JNI_OBJS = $(JNI_SRCS:.c=.o)
JAVA_OBJS = $(JAVA_SRCS:.java=.class)
JNI_INCPATH= \
-I"$(JAVA_HOME)/include" \
-I"$(JAVA_HOME)/include/linux"
CC = gcc
AR = ar
LD = ld
RANLIB = ranlib
CFLAGS = -Wall -O2 -D_REENTRANT -D_THREAD_SAFE -fPIC -I../.. $(JNI_INCPATH)
LDFLAGS =
LIBS =
JAVAC = javac
JAVACFLAGS = -classpath ../..
all: lib jni
lib: $(C_OBJS)
$(AR) cr $(OUT).a $(C_OBJS)
jni: lib $(JNI_OBJS) $(JAVA_OBJS)
$(LD) -fPIC -shared -soname $(OUT).so -o $(OUT).so -L . -l aseawk jni.o
clean:
rm -rf $(C_OBJS) $(JNI_OBJS) $(JAVA_OBJS) $(OUT).a $(OUT).so *.o
.SUFFIXES: .c .o .java .class
.c.o:
$(CC) $(CFLAGS) -c $<
.java.class:
$(JAVAC) $(JAVACFLAGS) $<