# # Ivy, C interface # # Copyright (C) 1997-2002 # Centre d'Études de la Navigation Aérienne # # Makefile # # Authors: François-Régis Colin # Stéphane Chatty # Yannick Jestin # # 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)