summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile71
1 files changed, 66 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index a8fe677..644f0f4 100644
--- a/Makefile
+++ b/Makefile
@@ -12,8 +12,13 @@ ifeq ($(os),Darwin)
else
PERHAPS64 := $(shell uname --machine | perl -ne "print /64/ ? '64' : '';")
LIB:= lib$(PERHAPS64)
- XTLIB = -L/usr/$(LIB) -L/usr/X11R6/$(LIB)
- CPPFLAGS = -MMD -I/usr/X11R6/include
+ XTLIB= -L/usr/$(LIB) -L/usr/X11R6/$(LIB)
+ XTOPT= -DUSE_XT
+ QTINC= -I/usr/lib/qt4/include -I/usr/lib/qt4/include/QtCore -I/usr/lib/qt4/include/QtGui
+ QTOPT= -D_REENTRANT -DQT_SHARED
+ QTLIB= -lQtGui -lQtCore -lpthread
+
+ CPPFLAGS = -MMD -I/usr/X11R6/include -I/usr/local/include/Ivy
DSO_EXT = .so
LD = g++ -shared -fPIC
#PREFIX=/usr/local
@@ -25,6 +30,17 @@ else
endif
endif
+CASESENSITIVE = "yes"
+ifeq ($(CASESENSITIVE), "no")
+ PCRE_OPT=PCRE_CASELESS
+ REGCOMP_OPT=REG_ICASE
+else
+ PCRE_OPT=0
+ REGCOMP_OPT=REG_EXTENDED
+endif
+REGEXP= -DUSE_PCRE_REGEX -DPCRE_OPT=$(PCRE_OPT)
+PCREINC = $(shell pcre-config --cflags)
+
CXXFILES := Ivy.cxx IvyApplication.cxx
OBJECTS := $(CXXFILES:.cxx=.o)
@@ -34,12 +50,22 @@ CXXFILES_GLFW := Ivy_glfw.cxx IvyApplication.cxx
OBJECTS_GLFW := $(CXXFILES_GLFW:.cxx=.o)
DEPS_GLFW := $(CXXFILES_GLFW:.cxx=.d)
+CXXFILES_QT := Ivy.cxx IvyApplication.cxx ivyqtloop.cxx
+OBJECTS_QT := $(CXXFILES_QT:.cxx=.o)
+DEPS_QT := $(CXXFILES_QT:.cxx=.d)
+
+CXXFILES_XT := Ivy.cxx IvyApplication.cxx
+OBJECTS_XT := Ivy_Xt.o IvyApplication.o
+DEPS_XT := $(CXXFILES_XT:.cxx=.d)
+
LD_QUICKSTART_INFO=
GCXXINCS=
LIBIVY = libIvy
LIBIVY_GLFW = $(LIBIVY)_glfw
+LIBIVY_QT = $(LIBIVY)_Qt
+LIBIVY_XT = $(LIBIVY)_Xt
LIBIVY_STATIC = $(LIBIVY).a
LIBIVY_GLFW_STATIC = $(LIBIVY_GLFW).a
@@ -50,6 +76,13 @@ LIBIVY_DEPLIBS = -livy
LIBIVY_GLFW_SHARED = $(LIBIVY_GLFW)$(DSO_EXT)
LIBIVY_GLFW_DEPLIBS = -lglfw -livy -lX11 -lXext -lXxf86vm -lGL -lpthread
+LIBIVY_QT_SHARED = $(LIBIVY_QT)$(DSO_EXT)
+LIBIVY_QT_DEPLIBS = -lX11 -lXext -lQtCore -lpthread
+
+LIBIVY_XT_SHARED = $(LIBIVY_XT)$(DSO_EXT)
+LIBIVY_XT_DEPLIBS = -lX11 -lXext -lXt -lpthread
+
+
#a mettre dans les makefiles generant les executables
#LLDLIBS= -rpath. -L. -lTextureLabel -lInventor -lInventorXt -lXm -lXt -lttf -lGL -lGLU -lm
@@ -63,11 +96,25 @@ else
DBG=
endif
-default: $(LIBIVY_STATIC) $(LIBIVY_GLFW_STATIC) $(LIBIVY_SHARED) $(LIBIVY_GLFW_SHARED)
+default: $(LIBIVY_STATIC) $(LIBIVY_GLFW_STATIC) $(LIBIVY_SHARED) \
+ $(LIBIVY_GLFW_SHARED) $(LIBIVY_QT_SHARED) $(LIBIVY_XT_SHARED) \
+ testIvyQt testIvyXt
%.o: %.cxx
$(CC) -c $<
+
+Ivy_Xt.o: Ivy.cxx
+ $(CC) $(XTOPT) $< -c -o Ivy_Xt.o
+
+ivyqtloop.o: ivyqtloop.moc
+
+ivyqtloop.moc: ivyqtloop.h
+ /usr/lib/qt4/bin/moc $(QTOPT) $(QTINC) -i $< -o $@
+
+ivyqtloop.o: ivyqtloop.cxx
+ $(CC) $(QTINC) $(QTOPT) -c $<
+
$(LIBIVY_STATIC) : $(OBJECTS)
ar rv $(LIBIVY_STATIC) $(OBJECTS)
ranlib $(LIBIVY_STATIC)
@@ -82,6 +129,14 @@ $(LIBIVY_SHARED) : $(OBJECTS)
$(LIBIVY_GLFW_SHARED) : $(OBJECTS_GLFW)
$(LD) -o $(LIBIVY_GLFW_SHARED) $(OBJECTS_GLFW) $(LDFLAGS) $(LIBIVY_GLFW_DEPLIBS)
+$(LIBIVY_QT_SHARED) : $(OBJECTS_QT)
+ $(LD) -o $(LIBIVY_QT_SHARED) $(OBJECTS_QT) \
+ $(LDFLAGS) $(LIBIVY_QT_DEPLIBS)
+
+$(LIBIVY_XT_SHARED) : $(OBJECTS_XT)
+ $(LD) -o $(LIBIVY_XT_SHARED) $(OBJECTS_XT) \
+ $(LDFLAGS) $(LIBIVY_XT_DEPLIBS)
+
install: default
# headers
mkdir -p $(DESTDIR)$(PREFIX)/include/Ivy
@@ -109,8 +164,14 @@ install_mandriva64: default
LLDLIBS = -L $(XTLIB) -Wl,-rpath,$(XTLIB) -L. -Wl,-rpath,. -L$(IVY_PATH)/src
-testIvy : testIvy.cxx
- g++ -g $(XTLIB) $(LLDLIBS) -o $@ testIvy.cxx -lIvy -lxtivy -lXt -lX11
+testIvyXt : testIvyXt.cxx
+ g++ -g $(CPPFLAGS) $(XTLIB) $(LLDLIBS) -o $@ testIvyXt.cxx -lIvy -lxtivy -lXt -lX11 -lIvy_Xt
+
+testIvyQt.moc: testIvyQt.cxx
+ /usr/lib/qt4/bin/moc $(QTOPT) $(QTINC) -i $< -o $@
+
+testIvyQt : testIvyQt.cxx testIvyQt.moc
+ g++ -g $(QTOPT) $(QTINC) $(QTLIB) $(LLDLIBS) -o $@ testIvyQt.cxx -lIvy_Qt -livy
distclean clean :