r1715: *** empty log message ***
[clsql.git] / interfaces / clsql-uffi / Makefile
index 8bc8436c7e9d2ad93e2ea0086fc1798318e30bf3..8f322b7d278690897b6d2db1637d2ce766257ba9 100644 (file)
@@ -7,7 +7,7 @@
 #  Programer:    Kevin M. Rosenberg
 #  Date Started: Mar 2002
 #
-#  CVS Id:   $Id: Makefile,v 1.1 2002/03/27 07:58:42 kevin Exp $
+#  CVS Id:   $Id: Makefile,v 1.3 2002/04/01 17:33:48 kevin Exp $
 #
 # This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg
 #
 # (http://opensource.franz.com/preamble.html), also known as the LLGPL.
 ###########################################################################
 
+AR=ar
 
 # These variables are correct for GCC
 # you'll need to modify these for other compilers
 CC=gcc
 SHARED_CC_OPT=-fpic
-SHARED_LD_OPT=-shared
+
+SHARED_LD_OPT=-shared # For Linux
+#SHARED_LD_OPT=-r # For FreeBSD and Solaris
 
 # If you are using Solaris, these are the correct values
 # for creating a shared library
@@ -32,20 +35,27 @@ SHARED_LD_OPT=-shared
 # Nothing to configure beyond this point
 
 BASE=clsql-uffi
-SRC=${BASE}.c
-OBJECT=${BASE}.o
-LIB=${BASE}.so
+SRC=$(BASE).c
+OBJECT=$(BASE).o
+SHARED=$(BASE).so
+STATIC=$(BASE).a
+
+all: $(SHARED) $(STATIC)
 
-all: ${LIB}
+$(SHARED): $(SRC)
+       $(CC) $(SHARED_CC_OPT) -c $(SRC) -o $(OBJECT)
+       ld $(SHARED_LD_OPT) $(OBJECT) -o $(SHARED)
+       @rm $(OBJECT)
 
-${LIB}: ${SRC} 
-       ${CC} ${SHARED_CC_OPT} -c ${SRC} -o ${OBJECT}
-       ld ${SHARED_LD_OPT} ${OBJECT} -o ${LIB}
-       @rm ${OBJECT}
+$(STATIC): $(SRC) 
+       $(CC) -c $(SRC) -o $(OBJECT)
+       $(AR) r $(STATIC) $(OBJECT)
+       @rm $(OBJECT)
 
 clean:
-       rm -f ${LIB}
+       rm -f $(SHARED) $(STATIC)
 
 realclean: clean
        rm -f *~
 
+