1# This Makefile works on Linux.
2# This is for compiling with OpenMP support on a 64-bit system.
3# It is based on linux_xorg7_64 and is used on a Fedora 10 system.
4
5# CPROF = -pg -g
6USE_ZLIB = -DHAVE_ZLIB
7LZLIB    = -lz
8USE_GIFTI = -DHAVE_GIFTI
9LGIFTI    = /usr/lib64/libexpat.a
10
11# ------------------------------
12# python from C (off for now)
13# IPYTHON  = -DSELENIUM_READY -I/usr/include/python2.5
14# LDPYTHON = -lpython2.5
15
16# ----------------------------------------------------------------------
17# X configuration
18#
19# uncomment to build using local /usr/local/afniX 'X' tree
20USE_LOCAL_X_TREE = 1
21ifdef USE_LOCAL_X_TREE
22    XROOT = /usr/local/afniX
23    XROOT_I = -I$(XROOT)/include
24else
25    XROOT = /usr
26endif
27
28# uncomment USE_LESSTIF to use lesstif instead of openmotif
29# USE_LESSTIF = 1
30ifdef USE_LESSTIF
31    LESSTIF_DEFS = -DUSING_LESSTIF
32
33    XLIBS = $(XROOT)/lib64/libXm.a $(XROOT)/lib64/libXt.a
34else
35    # default is static motif
36    XLIBS = $(XROOT)/lib64/libXm.a -lXt
37endif
38
39# in case user wants to override with system dynamic libs
40# XLIBS = -lXm -lXt
41# ----------------------------------------------------------------------
42
43CCDEBS = -DAFNI_DEBUG -DIMSEQ_DEBUG -DDISPLAY_DEBUG -DTHD_DEBUG
44CEXTRA = -Wcomment -Wformat -DUSE_TRACING -DHAVE_XDBE $(CPROF) \
45	 -DDONT_USE_XTDESTROY -D_GNU_SOURCE -DREPLACE_XT $(LESSTIF_DEFS)
46
47CC     = /usr/bin/gcc -O2 -m64 -fPIC -DREAD_WRITE_64 -DLINUX2 $(CEXTRA)
48CCVOL  = /usr/bin/gcc -O2 -m64 -fPIC -DREAD_WRITE_64 -DLINUX2 $(CEXTRA)
49CCFAST = /usr/bin/gcc -O2 -m64 -fPIC -DREAD_WRITE_64 -DLINUX2 $(CEXTRA)
50CCOLD  = /usr/bin/gcc -V 34 -O2 -m64 -fPIC -DREAD_WRITE_64 -DLINUX2 $(CEXTRA)
51
52# The following line includes compiling for the SSE operations.
53# However, I found that it actually makes things worse in some test code.
54# Your mileage may vary.
55
56# CCFAST = /usr/bin/gcc -O3 -march=i686 -ffast-math -mmmx -msse -mfpmath=sse -DLINUX2 $(CEXTRA)
57
58OMPFLAG = -fopenmp -DUSE_OMP
59CCMIN  = /usr/bin/gcc -m64 -fPIC $(CPROF)
60CCD    = $(CC) $(CCDEBS)
61
62IFLAGS = -I. $(XROOT_I) -I/usr/include
63LFLAGS = -L. -L/usr/lib64
64
65CCSVD  = /usr/bin/gcc -O0 -m64 -fPIC
66
67PLUGIN_SUFFIX = so
68PLUGIN_LFLAGS = -shared -fPIC
69PLUGIN_CC     = $(CC)
70PLFLAGS       = -rdynamic -L. -L/usr/lib64
71
72SYSTEM_NAME = linux_openmp_64
73SHOWOFF = -DSHOWOFF=$(SYSTEM_NAME)
74
75AR     = /usr/bin/ar
76RANLIB = /usr/bin/ranlib
77TAR    = /bin/tar
78MKDIR  = /bin/mkdir
79GZIP   = /bin/gzip
80LD     = /usr/bin/gcc $(CPROF)
81
82RM = /bin/rm -f
83MV = /bin/mv -f
84CP = /bin/cp -f
85
86LINT = /usr/bin/lint -a -b -u -v -x $(IFLAGS) $(CCDEFS)
87
88INSTALLDIR = ./linux_openmp_64
89LIBDIR = $(INSTALLDIR)
90
91#INSTALL_PREREQ = suma
92INSTALL_PREREQ = suma_gts
93# uncomment if the Gnu Scientific Library is installed (libgsl, libgslcblas)
94GSLPROGS = balloon
95EXPROGS = $(GSLPROGS)
96
97# for pure dynamic linking
98
99# LLIBS  = -lmri -lf2c -lXm -lXft -lXp -lXpm -lXext -lXmu -lXt -lSM -lICE -lX11 -lpng -ljpeg $(LZLIB) $(LGIFTI) -lm  -ldl -lc
100
101# link choices are made above
102
103LLIBS  = -lmri -lf2c $(XLIBS) -lXft -lXp -lXpm -lXext -lXmu -lSM -lICE -lX11 \
104	 $(LDPYTHON) -lpng -ljpeg $(LZLIB) $(LGIFTI) -lm  -ldl -lc
105
106# for static linking, as far as possible
107
108# LLIBS = -lmri -lf2c -ldl               \
109#        /usr/lib/libXm.a   \
110#        /usr/lib/libXpm.a  \
111#        /usr/lib/libXext.a \
112#        /usr/lib/libXmu.a  \
113#        /usr/lib/libXt.a   \
114#        /usr/lib/libSM.a   \
115#        /usr/lib/libICE.a  \
116#        /usr/lib/libX11.a  \
117#        /usr/lib/libm.a          \
118#        /usr/lib/libc.a
119
120# vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
121# For suma (NO STATIC LINKING OF GL libs)
122SUMA_GLIB_VER = -2.0
123
124#use -lGLw if you have libGLw.a or libGLw.so* or
125#  -lMesaGLw if you have Mesa's version (libMesaGLw*) of libGLw
126GLw_IPATH  = -IGLw_local
127GLw_LIB = libGLws.a
128
129SUMA_INCLUDE_PATH = $(GLw_IPATH) $(IFLAGS) -I.. -I../niml -Igts/src -I/usr/include/glib-1.2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include
130SUMA_LINK_PATH = -L.. $(LFLAGS)
131#use -lGLw if you have libGLw.a or libGLw.so* or
132#  -lMesaGLw if you have Mesa's version (libMesaGLw*) of libGLw
133SUMA_LINK_LIB = $(GLw_LIB) -lGLU -lGL $(LLIBS)
134SUMA_MAKEFILE_NAME = SUMA_Makefile
135SUMA_BIN_ARCHIVE = SUMA_Linux.tar
136SUMA_MDEFS = -DSUMA_GL_NO_CHECK_FRAME_BUFFER
137# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
138
139###############################################################
140
141MAKE = make
142include Makefile.INCLUDE
143