r1734: *** empty log message ***
[uffi.git] / examples / Makefile
1 # FILE IDENTIFICATION
2 #
3 #  Name:         Makefile
4 #  Purpose:      Makefile for UFFI examples
5 #  Programer:    Kevin M. Rosenberg
6 #  Date Started: Mar 2002
7 #
8 #  CVS Id:   $Id: Makefile,v 1.11 2002/04/03 17:43:31 kevin Exp $
9 #
10 # This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg
11 #
12 # UFFI users are granted the rights to distribute and use this software
13 # as governed by the terms of the Lisp Lesser GNU Public License
14 # (http://opensource.franz.com/preamble.html), also known as the LLGPL.
15
16
17 # GCC Section
18 CC=gcc
19 SHARED_CC_OPT=-fPIC -DPIC
20
21 #SHARED_LD_OPT=-r -Bdynamic # For FreeBSD and Solaris (CMUCL)
22 SHARED_LD_OPT=-shared -Bdynamic  # For Linux (ALL) and FreeBSD (ACL)
23
24 # For MacOSX (ACL)
25 #SHARED_CC_OPT=-dynamic
26 #SHARED_LD_OPT=-bundle /usr/lib/bundle1.o -undefined suppress # -o foo.dylib foo.o
27
28
29 # Use these for Sun's C compiler and Solaris (ACL)
30 #CC=cc
31 #SHARED_CC_OPT=-KPIC
32 #SHARED_LD_OPT=-G
33
34
35 # Nothing to configure beyond this point
36
37 base=c-test-fns
38 source=$(base).c
39 object=$(base).o
40 shared_lib=$(base).so
41
42 all: $(shared_lib)
43
44 $(shared_lib): $(source) Makefile
45         $(CC) ${SHARED_CC_OPT} -c $(source) -o $(object)
46         ld ${SHARED_LD_OPT} $(object) -o $(shared_lib)
47         rm $(object)
48
49 clean:
50         rm -f $(object) $(shared_lib)
51
52 realclean: clean
53         rm -f *~