summaryrefslogtreecommitdiff
path: root/src/Makefile.win32
blob: 865c46101297ef249167120ec6bb3ad5aab93495 (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
#
#	Ivy, C interface
#
#	Copyright (C) 1997-2002
#	Centre d'Études de la Navigation Aérienne
#
# 	Makefile
#
#	Authors: François-Régis Colin <fcolin@cena.fr>
# 		 Stéphane Chatty <chatty@cena.fr>
# 		 Yannick Jestin <jestin@cena.fr>
#
#	Please refer to file version.h for the
#	copyright notice regarding this software
#


# change this in version.h too !!!!
MAJOR=3
MINOR=11

PCREINC = -I "..\..\pcre-7.5\\" 
PCRELIB = ..\..\pcre\x64\Release\pcre.lib

#PCREINC = -I "C:\Program Files\GnuWin32\include" #`pcre-config --cflags`
#PCRELIB = "C:\Program Files\GnuWin32\lib\libpcre.lib" #`pcre-config --libs`

PCRE_OPT = PCRE_CASELESS
REGCOMP_OPT = REG_ICASE

#	PCRE_OPT = 0
#	REGCOMP_OPT = REG_EXTENDED	


#PCREOBJ = `pcre-config --prefix`/lib/libpcre.a
PCREOBJ = 

#CC=gcc
#CFLAGS = -g -Wall
CFLAGS = /W3 /DWIN32 /D_CRT_SECURE_NO_DEPRECATE /nologo
#LIBTOOL=ar q # linux and solaris
#LIBTOOL=libtool -static -o
LIBTOOL=lib /nologo
TOOLS_DIR = tools

#REGEXP = -DGNU_REGEXP  -DREGCOMP_OPT=$(REGCOMP_OPT) # deprecated !
REGEXP= /DUSE_PCRE_REGEX /DPCRE_OPT=$(PCRE_OPT)
# on activeTCL , set #define CHANNEL to null, and add ivyloop.obj in the ivytcl target,
# see below
CHANNEL = -DTCL_CHANNEL_INTEGRATION 

OBJ = intervalRegexp.obj ivyloop.obj timer.obj ivysocket.obj ivy.obj \
      ivybuffer.obj ivyfifo.obj ivybind.obj

# WINDOWS add ivyloop.obj if TCL_CHANNEL_INTEGRATION is not set
TARGETLIBS=ivy.dll

.c.obj:
	$(CC) $(CFLAGS) /c $*.c

all: static-libs  shared-libs tools

static-libs: libivy.lib

shared-libs: $(TARGETLIBS)

ivybind.obj: ivybind.c
	$(CC) $(CFLAGS) $(REGEXP) $(PCREINC) /c ivybind.c



libivy.lib: $(OBJ)
	del /f $@
	$(LIBTOOL) /out:$@ $(OBJ) 

ivy.dll: $(OBJ)
	LINK /dll /out:$@ /DEF:libivy.def $(OBJ) $(PCRELIB) wsock32.lib

tools: static-libs 
	@(cd $(TOOLS_DIR) && $(MAKE) -f Makefile.win32)


clean:
	-del /f $(TARGETLIBS) *.obj *.lib *.dll *~
	@(cd $(TOOLS_DIR) && $(MAKE) -f Makefile.win32 clean)