forked from kimberg/voxbo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmake_stuff.txt
104 lines (89 loc) · 3.06 KB
/
make_stuff.txt
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
# root and binary directories
VB_PREFIX ?= /usr/local/VoxBo
VB_BINDIR ?= $(VB_PREFIX)/bin
VB_LIBDIR ?= $(VB_PREFIX)/lib
VB_FFDIR ?= $(VB_PREFIX)/etc/fileformats
VB_TARGET ?= all
CLEANME=a.out *.o *.so *~ *.exe *.a core.[0-9]* *.hlp.h *.moc.h moc_*.cpp rsrc.cpp
# common lib stuff
VPATH=../lib
ifdef VB_SHARED
LIBSUFFIX=so
VBLIBS=libvbutil.so libvbio.so libvbprefs.so
VBQTLIBS=libvbwidgets.so
VBLIBSDB=libvbutil.so libvbio.so libvbprefs.so libdbutil.so
VBLIBS2=libvbutil.so libvbio.so libvbprefs.so libvbglm.so
VBLIBS3=libvbutil.so libvbio.so libvbprefs.so libvbglm.so libvbscripts.so
else
LIBSUFFIX=a
VBLIBS=libvbutil.a libvbio.a libvbprefs.a
VBQTLIBS=libvbwidgets.a
VBLIBSDB=libvbutil.a libvbio.a libvbprefs.a libdbutil.a
VBLIBS2=libvbutil.a libvbio.a libvbprefs.a libvbglm.a
VBLIBS3=libvbutil.a libvbio.a libvbprefs.a libvbglm.a libvbscripts.a
endif
# GSL-related
GSL_LIBS=$(shell gsl-config --libs)
GSL_VERSION=$(shell gsl-config --version)
GSL_PREFIX=$(shell gsl-config --prefix)
GSL_CFLAGS=$(shell gsl-config --cflags)
# currently we can get better results hardcoding this a bit
GSL_CFLAGS=
GSL_LIBS=-lgsl -lgslcblas -lm
# build tools
CXX ?= g++
CC ?= g++
#OPT ?= -Werror
OPT ?= -O2
DEBUG ?=
PICFLAG ?= -fPIC
# consider more warnings, like -Weffc++ and -Wold-style-cast
WARNINGS = -Wall -Wextra -Wstrict-null-sentinel
WARNINGS = -Wall -Wextra
CFLAGS ?= $(DEBUG) $(OPT) $(WARNINGS) $(GSL_CFLAGS)
CXXFLAGS?=$(DEBUG) $(OPT) $(WARNINGS) $(GSL_CFLAGS)
LIBDIRS=-L/usr/local/lib -L../lib
INCDIRS=-I/usr/local/include -I../lib
VBRC ?= python ../lib/vbrc.py
# random additional variables
DLLIB=-ldl
FORTLIB=-lgfortran
SHAREDFLAG=-shared
ARCH=LINUX
# QT paths, now all for QT4
QTDIR = /usr/local/qt4
# QTLIBDIR ?= $(QTDIR)/lib:$(QTDIR)/plugins/imageformats
#QTINCDIR ?= $(QTDIR)/include:$(QTDIR)/include/QtCore:$(QTDIR)/include/QtGui:$(QTDIR)/include/Qt3Support
QTBINDIR ?= $(QTDIR)/bin
MOC = $(QTBINDIR)/moc
RCC = $(QTBINDIR)/rcc
QTLIBS ?= -lvbwidgets -lQt3Support -lQtNetwork -lQtGui -lQtCore -lXi -lXext -lX11 -lXrender -lfontconfig -lz -lm -ldl -lpng -lpthread -lrt -lfreetype
QTLIBDIRS=-L$(QTDIR)/lib -L../vbwidgets
QTBASEINCDIR=$(QTDIR)/include
QTINCDIRS=-I$(QTBASEINCDIR) -I$(QTBASEINCDIR)/QtCore -I$(QTBASEINCDIR)/QtGui -I$(QTBASEINCDIR)/Qt3Support -I../vbwidgets
# some platform-specific overrides
ifeq ($(shell uname),Linux)
LDFLAGS ?= -Wl,--no-undefined
endif
ifeq ($(shell uname),Darwin)
DLLIB=
FORTLIB=
SHAREDFLAG=-bundle
ARCH=DARWIN
QTLIBS = -lQt3Support -lQtNetwork -lQtGui -lQtCore -lz -lm -ldl -lpng -lpthread -lvbwidgets -framework Carbon -framework AppKit -framework ApplicationServices
endif
ifeq ($(shell uname),CYGWIN_NT-5.1)
OPT=
CXXFLAGS += -enable-auto-import
DLLIB=
PICFLAG=
FORTLIB=-lg2c
ARCH=CYGWIN
QTLIBS ?= -lQt3Support -lQtNetwork -lQtGui -lQtCore -lz -lm -ldl -lpng -lpthread -lqgif -lqjpeg -lqtiff
endif
ifdef VB_SHARED
QTLIBS+=-lqgif -lqjpeg -lqtiff
QTLIBDIRS+=-L$(QTDIR)/plugins/imageformats -L$(QTDIR)/lib/qt4/plugins/imageformats
endif
# now that we're set with platform-specific stuff, adjust cxxflags
CXXFLAGS+=-D$(ARCH) $(INCDIRS)