diff options
Diffstat (limited to 'vendor/voclient/libvoclient/Makefile.man')
-rw-r--r-- | vendor/voclient/libvoclient/Makefile.man | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/vendor/voclient/libvoclient/Makefile.man b/vendor/voclient/libvoclient/Makefile.man new file mode 100644 index 00000000..360b6980 --- /dev/null +++ b/vendor/voclient/libvoclient/Makefile.man @@ -0,0 +1,185 @@ +#/////////////////////////////////////////////////////////////////////////////// +#// +#// Makefile for the VOClient C API procedures +#// (Classic non-autoconf/automake version) +#// +#// M. Fitzpatrick, NOAO, June 2006 initial version +#// D.Tody, NRAO Aug 2006 added autoconf support +#// +#/////////////////////////////////////////////////////////////////////////////// + +# primary dependencies + +NAME = voclient +VERSION = 1.0 +PLATFORM := $(shell uname -s) +#PLATFORM = LINUX +#PLATFORM = MACOSX +#PLATFORM = CYGWIN +HERE := $(shell /bin/pwd) + + +# secondary dependencies + +LIBBASE = lib$(NAME) +STATICLIB = $(HERE)/$(LIBBASE).a +SHAREDLIB = $(HERE)/$(LIBBASE).so.$(VERSION) + + +# stuff that's precious to keep + +.PRECIOUS: $(STATICLIB) $(SHAREDLIB) +.KEEP_STATE: + + +# includes, flags and libraries +CC = gcc +CINCS = -I$(HERE) +#CFLAGS = -O2 -DDEBUG -D$(PLATFORM) +CFLAGS = -g -Wall -D$(PLATFORM) + + +# list of source and include files + +SRCS = vocDAL.c vocDAL_f77.c vocDAL_spp.c \ + vocLib.c vocLib_f77.c vocLib_spp.c \ + vocRegistry.c vocRegistry_f77.c vocRegistry_spp.c \ + vocSesame.c vocSesame_f77.c vocSesame_spp.c \ + vocSkybot.c vocSkybot_f77.c vocSkybot_spp.c \ + vocUtil_f77.c vocUtil_spp.c vocMsg.c +OBJS = vocDAL.o vocDAL_f77.o vocDAL_spp.o \ + vocLib.o vocLib_f77.o vocLib_spp.o \ + vocRegistry.o vocRegistry_f77.o vocRegistry_spp.o \ + vocSesame.o vocSesame_f77.o vocSesame_spp.o \ + vocSkybot.o vocSkybot_f77.o vocSkybot_spp.o \ + vocUtil_f77.o vocUtil_spp.o vocMsg.o +INCS = VOClient.h + +WRAP_SRCS = vocDAL.c vocLib.c vocMsg.c vocSesame.c vocSkybot.c vocRegistry.c +WRAP_OBJS = vocDAL.o vocLib.o vocMsg.o vocSesame.o vocSkybot.o vocRegistry.o + + + + +# targets + +all: Static $(STATICLIB) + +all_static: Static $(STATICLIB) + +all_shared: Shared $(SHAREDLIB) + +World: + make clean + make all + make wrapper_code + make wrapper_libs + make install + +clean: + /bin/rm -rf Shared Static *.o + /bin/rm -rf libvoclient.* *voclient.so + /bin/rm -rf .make.state .nse_depinfo + /bin/rm -rf dataset.* examples/dataset.* + /bin/rm -rf voclient* SWIG* php_*.h + +help: HELP + +install: all + cp VOClient.h ../include + cp libvoclient.a ../lib + + + +############################################################################### +# SWIG Wrapper code generation +############################################################################### + +wrapper_code: tcl_wrap py_wrap perl_wrap java_wrap php_wrap ruby_wrap mono_wrap + +tcl_wrap: VOClient.i + (swig -tcl -o vocWrapTcl.c VOClient.i ) + +py_wrap: VOClient.i + (swig -python -o vocWrapPython.c VOClient.i ) + +perl_wrap: VOClient.i + (swig -perl -o vocWrapPerl.c VOClient.i ) + +java_wrap: VOClient.i + (swig -java -o vocWrapJava.c VOClient.i ) + +php_wrap: VOClient.i + (swig -php -o vocWrapPhp.c VOClient.i ) + +ruby_wrap: VOClient.i + (swig -ruby -o vocWrapRuby.c VOClient.i ) + +mono_wrap: VOClient.i + (swig -csharp -o vocWrapCSharp.c VOClient.i ) + + + +############################################################################### +# SWIG Wrapper share library builds -- highly platform dependent!! +############################################################################### + +wrapper_libs: wrapper_code tcl_lib python_lib perl_lib java_lib + +tcl_lib: VOClient.i + $(CC) -fPIC -c $(SRCS) vocWrapTcl.c + $(CC) -shared $(OBJS) vocWrapTcl.o -o voclient.so + $(RM) VOClient_wrap.* + + +PY_INCS = -I. -I/usr/include/python2.3 -I/usr/include/python2.4 + +python_lib: VOClient.i + $(CC) -w -c $(PY_INCS) $(SRCS) vocWrapPython.c + ld -shared $(OBJS) vocWrapPython.o -o _voclient.so + $(RM) VOClient_wrap.* + +perl_lib: VOClient.i + gcc -c $(SRCS) vocWrapPerl.c `perl -MExtUtils::Embed -e ccopts` + ld -G $(OBJS) -o voclient.so + $(RM) VOClient_wrap.* + + +JWRAP_FLAGS = -I/usr/java/j2sdk/include/ -I/usr/java/j2sdk/include/linux + +java_lib: VOClient.i + gcc -fpic -c $(WRAP_SRCS) vocWrapJava.c $(JWRAP_FLAGS) + gcc -shared $(WRAP_OBJS) vocWrapJava.o -o libvoclient.so + $(RM) VOClient_wrap.* + + +PHP_INCS = -I. -I/usr/include/php -I/usr/local/include/php -I/usr/local/php \ + -I/usr/include/php/Zend -I/usr/local/include/php/Zend + +php_lib: VOClient.i + gcc -fpic -c $(PHP_INCS) $(WRAP_SRCS) vocWrapPhp.c + gcc -shared $(WRAP_OBJS) vocWrapPhp.o -o voclient.so + $(RM) VOClient_wrap.* + + + + +############################################################################### +# Leave this stuff alone. +############################################################################### + +$(STATICLIB): $(SRCS:%.c=Static/%.o) + /usr/bin/ar rv $@ $? +Static/%.o: %.c $(INCS) + /usr/bin/gcc $(CINCS) $(CFLAGS) -c $< -o $@ +Static: + /bin/mkdir $@ + chmod 777 $@ + +$(SHAREDLIB): $(SRCS:%.c=Shared/%.o) + /usr/bin/ld -shared -o $@ $? -lc -ldl +Shared/%.o: %.c $(INCS) + /usr/bin/gcc $(CINCS) $(CFLAGS) -fpic -shared -c $< -o $@ +Shared: + /bin/mkdir $@ + chmod 777 $@ |