X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=db-mysql%2FMakefile;h=583f6e97d6f87d12b73151c40d2465c635b94ee4;hb=7d03e9eeda300fa11ef782a452a3c66a90661291;hp=6e3f02999e4a62faff58c11f8951e2f250bcae5e;hpb=8b2ffc1ca1f3118db6fe4b879a82955338fccae4;p=clsql.git diff --git a/db-mysql/Makefile b/db-mysql/Makefile index 6e3f029..583f6e9 100644 --- a/db-mysql/Makefile +++ b/db-mysql/Makefile @@ -1,64 +1,66 @@ -# -*- Mode: Makefile -*- -########################################################################### +#!/usr/bin/make # FILE IDENTIFICATION -# +# # Name: Makefile -# Purpose: Makefile for the CLSQL MySQL database interface +# Purpose: Makefile for CLSQL MySQL interface # Programer: Kevin M. Rosenberg # Date Started: Mar 2002 # -# CVS Id: $Id: Makefile,v 1.2 2002/12/09 10:34:16 kevin Exp $ +# CVS Id: $Id$ # # This file, part of CLSQL, is Copyright (c) 2002 by Kevin M. Rosenberg # # CLSQL 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. -########################################################################### - -# These variables are correct for GCC -CC=gcc -SHARED_CC_OPT=-fPIC -DPIC -SHARED_LD_OPT=-shared -LD=gcc - -# Use these for Sun's C compiler and Solaris (ACL) -#CC=cc -#SHARED_CC_OPT=-KPIC -#SHARED_LD_OPT=-G -#LD=ld -# May need to change to the directory where you have installed mysql's library -vpath %.so /usr/lib /usr/local/lib /opt/mysql/lib/mysql -vpath %.h /usr/include /usr/include/mysql /usr/local/include /usr/local/include/mysql /opt/mysql/include/mysql -INCLUDE_DIRS=-I/usr/include/mysql -I/usr/local/include/mysql -I/opt/mysql/include/mysql -I/usr/include -I/usr/local/include +SUBDIRS= -# Nothing to configure beyond this point +include ../Makefile.common -base=clsql-mysql +base=clsql_mysql source=$(base).c object=$(base).o shared_lib=$(base).so -.PHONY: all clean distclean -all: compile +.PHONY: all +all: $(shared_lib) -compile: $(shared_lib) +CFLAGS=-I /usr/local/include/mysql -I /usr/include/mysql -I /sw/include/mysql -I /opt/local/include/mysql +LDFLAGS=-L/usr/local/lib64/mysql -L/usr/local/lib/mysql -L/usr/lib/mysql -L/sw/lib -L/opt/local/lib/mysql -L/usr/lib/gcc/i686-pc-cygwin/3.4.4 -lmysqlclient -lz -lc -$(object): $(source) mysql.h - $(CC) ${SHARED_CC_OPT} $(INCLUDE_DIRS) -c $< -o $@ +ifneq ($(OS_CYGWIN),0) + CFLAGS=-I /cygdrive/c/Program\ Files/MySQL/MySQL\ Server\ 5.0/include + LDFLAGS=-L/usr/local/lib64/mysql -L/usr/local/lib/mysql -L/usr/lib/mysql -L/sw/lib -L/opt/local/lib/mysql -L/usr/lib/gcc/i686-pc-cygwin/3.4.4 -lmysqlclient -lpthread -lz -lm -lgcc -lc +endif -$(shared_lib): $(object) - $(LD) ${SHARED_LD_OPT} $^ -o $@ - -mac: $(object) - ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress $(object) -o $(base).dylib - ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress /sw/lib/libmysqlclient.dylib -o libmysqlclient.dylib - ld -bundle /usr/lib/bundle1.o -flat_namespace -undefined suppress /usr/lib/libz.dylib -o libz.dylib - -clean: - @rm -f $(object) $(shared_lib) *~ +$(shared_lib): $(source) Makefile +ifneq ($(OS_AIX),0) + gcc $(CFLAGS) -c -D_BSD -D_NO_PROTO -D_NONSTD_TYPES -D_MBI=void $(source) + make_shared $(LDFLAGS) -o $(shared_lib) $(object) +else + ifneq ($(OS_SUNOS),0) + cc $(CFLAGS) -KPIC -c $(source) -o $(object) + cc -G $(object) $(LDFLAGS) -o $(shared_lib) + else + ifneq ($(OS_DARWIN),0) + cc $(CFLAGS) -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 $(LDFLAGS) -flat_namespace -undefined suppress /usr/lib/libz.dylib -o z.dylib + else + ifneq ($(OS_CYGWIN),0) + gcc $(CFLAGS) -DWIN32 -c $(source) -o $(object) + ld -shared -soname=$(base) $(object) $(LDFLAGS) -o $(shared_lib) + else + gcc $(CFLAGS) -fPIC -c $(source) -o $(object) + ld -shared -soname=$(base) $(object) $(LDFLAGS) -o $(shared_lib) + endif + endif + endif +endif + rm $(object) +.PHONY: distclean distclean: clean - + rm -f $(base).dylib $(base).dylib $(base).so $(base).o