adopted to graphviz version 10.0.1 and MACOS Sonoma
[luagraph.git] / config
blob570f61ea8470d38b126c7ba128589b7297cf1a66
1 # Your system. Expands to 'GNU/Linux' or 'Cygwin'
2 SYSTEM = $(shell uname)
4 ifneq ($(SYSTEM), Linux) 
5   ifneq ($(SYSTEM), Darwin)
6     SYSTEM = $(shell uname -o)
7   endif
8 endif
10 # Module name
11 MODULE=luagraph
13 # Plugins: static or dynamic
14 USE_BUILTIN_PLUGINS=no
16 # Lua for Windows ?
17 LFW=no
19 # Lua Version to use:
20 ifeq ($(SYSTEM), Msys)
21   ifeq ($(LFW), yes)
22     # LFW support Lua 5.1 only
23     LV = 5.1
24     V=51
25   else
26     LV = 5.2
27     V=52
28   endif
29 else
30   LV = 5.3
31   V=53
32 endif
34 # Debugging 1 or 0
35 DEBUG = 1
37 # Current graphviz version
38 GVVERSION = $(shell dot -V 2>&1 | cut -d " " -f 5)
39 ifeq ($(SYSTEM), Msys)
40   GVROOT=/c/usr
41   GVLIB=$(GVROOT)/lib/graphviz
42 else
43   GVLIB=$(GVROOT)/lib
44   ifeq ($(SYSTEM), Darwin)
45     GVROOT=/usr/local
46   else
47     GVROOT=/usr
48   endif
49 endif
50 GVINC=$(GVROOT)/include/graphviz
52 # Root of Lua Installation
53 ifeq ($(SYSTEM), Msys)
54   INSTALL_ROOT=/c/usr/local
55 else
56   INSTALL_ROOT=/usr/local
57 endif
58 INSTALL_SHARE=$(INSTALL_ROOT)/share/lua/$(LV)
59 INSTALL_LIB=$(INSTALL_ROOT)/lib/lua/$(LV)
60 INSTALL_DOC=$(INSTALL_ROOT)/share/doc/$(MODULE)
62 # Installation stuff
63 INSTALL = install -p
64 INSTALL_EXEC = $(INSTALL) -m 0755
65 INSTALL_DATA = $(INSTALL) -m 0644
66 INSTALL_COPY = cp -p -r
68 # == YOU PROBABLY DO NOT NEED TO CHANGE ANYTHING BELOW  =======================
70 # Platform specific differences
72 ifeq ($(SYSTEM), Msys)
73   # Lua installation
74   ifeq ($(LFW), yes)
75     # 1. Lua for Windows
76     LUA=c:\\Lua\5.1
77     LUALIB=$(LUA)
78     LIBS=-llua$(LV)
79   else
80     # 2. Lua under MingGW
81     LUA=/c/usr/local
82     LUALIB=$(LUA)/lib
83     LIBS=-llua$(V)
84   endif
85   LUAINC=$(LUA)/include
86   LUABIN=$(LUA)/bin
87   EXT = dll
88 else
89   ifeq ($(SYSTEM), Darwin)
90     # Lua installation for Darwin
91     LUA = /usr/local
92     EXT = so
93     LUABIN=$(LUA)/bin/lua$V
94     LUAINC=$(LUA)/include/lua/$(LV)
95     LUALIB=$(LUA)/lib/
96     LIBS=
97   else
98     # Lua installation for Linux (Debian)
99     LUA = /usr
100     LUAINC=$(LUA)/include/lua$(LV)
101     LUABIN=$(LUA)/bin/lua$(LV)
102     LUALIB=$(LUA)/lib
103     EXT = so
104     LIBS=
105   endif
106 endif
108 PLATFORM=-D$(SYSTEM)
110 # Downward compatibility
111 DEFCOMPAT=
113 # Current Version of LuaGRAPH
114 VERSION=2.0.1
116 #LuaGRAPH module frontend
117 LUAGRAPH=graph$(LV).lua
119 # Targets
120 LUAGRAPH_SO=graph.$(EXT).$(VERSION)
121 LUAGRAPH_WIN32=luagraph51-2.0.0-2
123 # Testing
124 TESTLUA=test/test$(LV).lua
125 # Compiler and Linker
126 DEF = $(DEFCOMPAT) -DSYSTEM='"$(SYSTEM)"' -DGVVERSION='"$(GVVERSION)"' $(PLATFORM)
127 CC = gcc
128 ifeq ($(DEBUG), 1)
129      OPT=-ggdb
130 else
131      OPT=-O2
132 endif
133 CFLAGS=-I$(LUAINC) -I$(GVINC) $(DEF)  -Wall -Wno-comment -Wno-error=implicit-function-declaration  $(OPT)
134 #CFLAGS=-I$(LUAINC) -I$(GVINC) $(DEF)  -Wno-error=implicit-function-declaration $(OPT)
136 ifeq (Darwin, $(SYSTEM))
137   LDFLAGS= $(OPT) -dynamiclib -undefined dynamic_lookup -L$(LUALIB) -L$(GVLIB)
138   LIBS += -lgvc -lcgraph -lcdt -lpathplan -lltdl
139 else
140   ifeq (Linux, $(SYSTEM))
141     CFLAGS += -fPIC
142     LDFLAGS= $(OPT) -shared -L$(LUALIB) 
143     LIBS += -lgvc -lcgraph -lcdt -lpathplan -lltdl
144   else
145     ifeq (Msys, $(SYSTEM))
146       CFLAGS += -mwin32 -I$(GVINC)
147       LDFLAGS= -O -shared -L$(GVLIB) -L$(LUALIB)
148       ifeq ($(USE_BUILTIN_PLUGINS), yes)
149         CFLAGS += -DUSE_BUILTIN_PLUGINS
150         LIBS += -lgvc -lcdt -lpathplan -lltdl -lcgraph -lgvplugin_dot_layout -lgvplugin_neato_layout -lgvplugin_core -lgvplugin_gd -lgvplugin_pango
151       else
152         LIBS += -lgvc -lcdt -lpathplan -lltdl -lcgraph
153       endif
154     endif
155   endif
156 endif
157 LD = gcc
159 # Distribution stuff
160 EXPORTDIR = $(HOME)/exports
161 DISTNAME = $(MODULE)-$(VERSION)
162 DISTARCH = $(DISTNAME).tar.gz
163 CVSMODULE = lua/lua-$(LV)/modules/$(MODULE)
164 SVNMODULE = $(MODULE)-$(VERSION)