# FILE IDENTIFICATION # # Name: Makefile # Purpose: Makefile for UFFI examples # Programer: Kevin M. Rosenberg # Date Started: Mar 2002 # # CVS Id: $Id: Makefile,v 1.4 2002/04/01 17:16:15 kevin Exp $ # # This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg # # UFFI users are granted the rights to distribute and use this software # as governed by the terms of the Lisp Lesser GNU Public License # (http://opensource.franz.com/preamble.html), also known as the LLGPL. AR=ar # These variables are correct for GCC CC=gcc SHARED_CC_OPT=-fpic SHARED_LD_OPT=-shared # For Linux #SHARED_LD_OPT=-r # For FreeBSD and Solaris # If you are using Solaris with Sun's CC, these are the correct values # for creating a shared library #CC=cc #SHARED_CC_OPT=-KPIC #SHARED_LD_OPT=-G base=c-test-fns # Nothing to configure beyond this point source=$(base).c object=$(base).o shared_lib=$(base).so static_lib=$(base).a all: $(shared_lib) $(static_lib) $(shared_lib): $(source) $(CC) ${SHARED_CC_OPT} -c $(source) -o $(object) ld ${SHARED_LD_OPT} $(object) -o $(shared_lib) $(AR) r $(static_lib) $(object) rm $(object) $(static_lib): $(source) ${CC} -c $(source) -o $(object) $(AR) r $(static_lib) $(object) rm $(object) clean: rm -f $(object) $(static_lib) $(shared_lib) realclean: clean rm -f *~