summaryrefslogtreecommitdiff
path: root/src/Makefile.osx
blob: aa45c3d7a24cc002b649aa67159adb80c8f3dac6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#
#	Ivy, C interface
#
#	Copyright (C) 1997-1999
#	Centre d'Études de la Navigation Aérienne
#
# 	Makefile for OS X
#
#	Authors: Marcellin Buisson <buisson@cena.fr>
#
#	$Id$
#
#	Please refer to file version.h for the
#	copyright notice regarding this software
#


MAJOR=3
MINOR=1

CC=cc
CFLAGS =  -g 
OBJ = ivyloop.o timer.o ivysocket.o ivy.o 
GOBJ = ivyloop.o timer.o ivysocket.o givy.o
TCLOBJ = ivytcl.o ivysocket.o givy.o
TARGETS = ivyprobe

.c.o:
	$(CC) $(CFLAGS) -c $*.c

all: static-libs commands shared-libs

static-libs: libivy.a 

shared-libs: libivy.$(MAJOR).$(MINOR).dylib 

tcl-exts: ivytcl.so.$(MAJOR).$(MINOR)

commands: $(TARGETS)

givy.o: ivy.c
	$(CC) -DGNU_REGEXP -c $(CFLAGS) -o givy.o ivy.c

ivyprobe: ivyprobe.o libivy.a
	$(CC)  $(CFLAGS) -o ivyprobe ivyprobe.o -L. -livy

libivy.a: $(OBJ)
	rm -f $@
	ar r $@ $(OBJ)
	ranlib $@

libgivy.a: $(GOBJ)
	rm -f $@
	ar r $@ $(GOBJ)

libivy.$(MAJOR).$(MINOR).dylib: $(OBJ)
	$(CC) -dynamiclib -o $@ $(OBJ) -lc

ivytcl.so.$(MAJOR).$(MINOR): $(TCLOBJ)
	#$(CC) -shared -Wl,-soname,ivytcl.so.$(MAJOR) -o $@ \
	$(CC) -dynamiclib -o $@ \

	$(TCLOBJ) -L$(TCLLIB) -ltcl -lc

clean:
	-rm -f $(TARGETS) *.o *.a *.so *.so.* *~

install: all
	test -d $(PREFIX)/usr/bin || mkdirhier $(PREFIX)/usr/bin
	test -d $(PREFIX)/usr/lib || mkdirhier $(PREFIX)/usr/lib
	test -d $(PREFIX)/usr/include || mkdirhier $(PREFIX)/usr/include
	install -m755 ivyprobe $(PREFIX)/usr/bin

	install -m644 libivy.a $(PREFIX)/usr/lib

	install -m644 libivy.$(MAJOR).$(MINOR).dylib $(PREFIX)/usr/lib
#	ln -s /usr/lib/ivytcl.so.$(MAJOR).$(MINOR) $(PREFIX)/usr/lib/ivytcl.so
#	ln -s /usr/lib/libivy.$(MAJOR).$(MINOR).dylib $(PREFIX)/usr/lib/libivy.dylib
#	ln -s /usr/lib/libivy.$(MAJOR).$(MINOR).dylib $(PREFIX)/usr/lib/libivy.$(MAJOR).dylib

	install -m644 -c *.h $(PREFIX)/usr/include
#	test -d $(PREFIX)/usr/local/doc/ivy-c || mkdir $(PREFIX)/usr/local/doc/ivy-c
#	for f in `find  ../doc/*.html -type f `; do \#-maxdepth 1`; do \
#               install -m 644 $$f $(PREFIX)/usr/local/doc/ivy-c; \
#        done
#	test -d $(PREFIX)/usr/local/man/man1 || mkdir $(PREFIX)/usr/local/man/man1
#	for f in `find  ../doc/*.1 -type f `; do \#-maxdepth 1`; do \
#                install -m 644 $$f $(PREFIX)/usr/local/man/man1; \
#        done