X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=examples%2FMakefile;h=4c0995ddfb3829df3c387ccd780340896d2d0e60;hb=HEAD;hp=d65deda0ce4684ccfd3c6b9b992f002e1bbf1fd2;hpb=893362cc91dc7f999c38ae542d13fa9325e782dc;p=uffi.git diff --git a/examples/Makefile b/examples/Makefile index d65deda..4c0995d 100644 --- a/examples/Makefile +++ b/examples/Makefile @@ -1,57 +1,43 @@ # FILE IDENTIFICATION -# +# # Name: Makefile # Purpose: Makefile for UFFI examples # Programer: Kevin M. Rosenberg # Date Started: Mar 2002 # -# CVS Id: $Id: Makefile,v 1.5 2002/04/01 20:33:45 kevin Exp $ -# -# This file, part of UFFI, is Copyright (c) 2002 by Kevin M. Rosenberg +# This file, part of UFFI, is Copyright (c) 2002-2010 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 +SUBDIRS:= -SHARED_LD_OPT=-shared # For Linux -#SHARED_LD_OPT=-r # For FreeBSD and Solaris +include ../Makefile.common -# 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 +.PHONY: distclean +distclean: clean base=c-test-fns - -# Nothing to configure beyond this point source=$(base).c object=$(base).o shared_lib=$(base).so -static_lib=$(base).a +.PHONY: all all: $(shared_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) +linux: $(source) Makefile + gcc -fPIC -DPIC -c $(source) -o $(object) + gcc -shared $(object) -o $(shared_lib) rm $(object) -$(static_lib): $(source) - ${CC} -c $(source) -o $(object) - $(AR) r $(static_lib) $(object) - rm $(object) +mac: + cc -dynamic -c $(source) -o $(object) + ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress -o $(base).dylib $(object) + ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress /usr/lib/libz.dylib -o z.dylib -clean: - rm -f $(object) $(static_lib) $(shared_lib) +solaris: + cc -KPIC -c $(source) -o $(object) + cc -G $(object) -o $(shared_lib) -realclean: clean - rm -f *~ +aix-acl: + gcc -c -D_BSD -D_NO_PROTO -D_NONSTD_TYPES -D_MBI=void $(source) + make_shared -o $(shared_lib) $(object)