# Makefile for lllua40, derived from
# makefile for libdllua standard library

#LUA= ../..
#LIB= $(LUA)/lib
#LIBDLLUA= $(LUA)/libdllua
#include $(LUA)/config

#DLLUA_OBJS= lbitlib.o lrexlib.o loadlib.o dllua_open.o
#DLLUA_SRCS= lbitlib.c lrexlib.c loadlib.c dllua_open.c
#DLLUA_T= $(LIB)/libdllua.a

#all: $(DLLUA_T)
#$(DLLUA_T): $(DLLUA_OBJS)
#	$(AR) $@ $(DLLUA_OBJS)
#	$(RANLIB) $@
#loadlib.o: loadlib.c
#	$(CC) -c $(CPPFLAGS) $(CFLAGS) -DDLFCN -o $@ $<
#clean:
#	rm -f $(DLLUA_OBJS) $(DLLUA_T)

#CFLAGS = -D_REENTRANT -O2 -D_POSIX_SOURCE -Wall -ansi -pedantic

CFLAGS = -D_REENTRANT -O2 -D_POSIX_SOURCE -Wall -ansi 

T= liblua4.0-loadlib2.a
S= liblua4.0-loadlib2.so.1
L= liblua4.0-loadlib2.so
R= lllua4.0

all: $T $S $R

OBJS = lloadlib.o

SOBJS = lloadlib.os

ROBJS = lllua.o

SRCS = lloadlib.c lua_loadlib2.h

RANLIB=ranlib

$T: $(OBJS)
	$(AR) cr $@ $(OBJS)
	$(RANLIB) $@

$S: $(SOBJS)
	$(CC) -Wl,-soname=liblua4.0-loadlib2.so.1 -o $@ \
	  -shared $(SOBJS) \
	  -llualib4.0 -llua4.0 -ldl  

$L: $S
	ln -s $S $L

$R: $(ROBJS) $L
	$(CC) -o $@ $(ROBJS) -L. -llua4.0-loadlib2 -llua4.0 -llualib4.0 -lm -ldl

# Addition for PIC code

clean:
	rm -f $(OBJS) $(SOBJS) $(ROBJS) $T $S $R $L *~

%.os: %.c
	$(CC) $(CFLAGS) -o $@ -fPIC -c $<
