Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
gmsh
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Larry Price
gmsh
Commits
e4b35ae7
Commit
e4b35ae7
authored
22 years ago
by
Christophe Geuzaine
Browse files
Options
Downloads
Patches
Plain Diff
Let's keep the olf makefile around, just in case
parent
b9e574a5
Branches
Branches containing commit
Tags
Tags containing commit
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
utils/oldmake
+735
-0
735 additions, 0 deletions
utils/oldmake
with
735 additions
and
0 deletions
utils/oldmake
0 → 100644
+
735
−
0
View file @
e4b35ae7
# $Id: oldmake,v 1.1 2003-02-11 23:01:17 geuzaine Exp $
GMSH_MAJOR_VERSION = 1
GMSH_MINOR_VERSION = 37
GMSH_PATCH_VERSION = 1
MAKE = make
CXX = c++
CC = cc
FLAGS = -g -Wall
RM = rm
RMFLAGS = -f
FLTK_DIR = $(HOME)/SOURCES/fltk-1.1
# ----------------------------------------------------------------------
# Gmsh definitions
# ----------------------------------------------------------------------
GMSH_COMMON_DIR = Common DataStr Geo Mesh Numeric Parallel Parser Plugin Triangle
GMSH_BOX_DIR =$(GMSH_COMMON_DIR) Box
GMSH_FLTK_DIR = $(GMSH_COMMON_DIR) Graphics Fltk jpeg
GMSH_DIR = $(GMSH_COMMON_DIR) Box Graphics Fltk jpeg utils
GMSH_BIN_DIR = bin
GMSH_LIB_DIR = lib
GMSH_DOC_DIR = doc
GMSH_DEMO_DIR = demos
GMSH_TUTORIAL_DIR = tutorial
GMSH_ARCHIVE_DIR = archives
GMSH_BOX_LIB = -L$(GMSH_LIB_DIR) -lGmshBox -lGmshParser -lGmshMesh -lGmshGeo -lGmshNumeric\
-lGmshPlugin -lGmshCommon -lGmshDataStr -lGmshParallel -lGmshTriangle
GMSH_FLTK_LIB = -L$(GMSH_LIB_DIR) -lGmshFltk -lGmshParser -lGmshGraphics -lGmshMesh\
-lGmshGeo -lGmshNumeric -lGmshCommon -lGmshDataStr -lGmshJpeg -lGmshPlugin\
-lGmshParallel -lGmshTriangle
GMSH_VERSION_FILE = Common/GmshVersion.h
GMSH_RELEASE = $(GMSH_MAJOR_VERSION).$(GMSH_MINOR_VERSION).$(GMSH_PATCH_VERSION)
GMSH_ARCHIVE = $(GMSH_ARCHIVE_DIR)/gmsh-`date "+%Y.%m.%d"`
GMSH_UNAME = `uname`
GMSH_SOURCES = `find . \( ! -name "*.tar*" -a ! -name "*.tgz" \
-a ! -name "*.o" -a ! -name "lib*.a" \
-a ! -name "*.msh" -a ! -name "*.bak" \
-a ! -name "gmsh" -a ! -name "gmsh-*"\
-a ! -type d \)`
default:
@echo "Type one of the following:"
@echo " make aix for IBM RS/6000 with AIX"
@echo " make cygwin for Win95/NT using Cygnus-Win32"
@echo " make gcc for a generic system with GCC"
@echo " make hpux for HP systems with HPUX 9.x/10.x using GCC"
@echo " make irix for SGI systems with IRIX"
@echo " make linux for Linux systems"
@echo " make macosx for Macintosh with Mac OS X and GCC"
@echo " make osf1 for DEC Alpha systems with OSF/1"
@echo " make sunos for Suns with SunOS"
@echo ""
@echo "You need fltk (http://www.fltk.org) version 1.1.x installed"
@echo "in $(FLTK_DIR) (or add \"FLTK_DIR=dir\""
@echo "to the above commands, e.g., make linux \"FLTK_DIR=/opt/fltk\")"
@echo ""
@echo "If your system is not listed above, edit the Makefile"
# ----------------------------------------------------------------------
# Ready to compile for some platforms
# ----------------------------------------------------------------------
#
# Source distribution
#
source:
tar zcvf gmsh.tgz `ls README* Makefile */Makefile */*.[chyl] */*.[ch]pp\
*/*.rc */*.res */*.ico */*.icns */*.pl */*.pm */*.opt */*.spec`\
doc demos tutorial
mkdir gmsh-$(GMSH_RELEASE)
cd gmsh-$(GMSH_RELEASE) && tar zxvf ../gmsh.tgz
rm -f gmsh.tgz
cd gmsh-$(GMSH_RELEASE) && rm -rf CVS */CVS */*/CVS */.globalrc $(GMSH_VERSION_FILE)
# cd gmsh-$(GMSH_RELEASE) && zip -r gmsh-$(GMSH_RELEASE)-source.zip *
# mv gmsh-$(GMSH_RELEASE)/gmsh-$(GMSH_RELEASE)-source.zip .
tar zcvf gmsh-$(GMSH_RELEASE)-source.tgz gmsh-$(GMSH_RELEASE)
rm -rf gmsh-$(GMSH_RELEASE)
#
# Generic little endian machine (e.g. with gcc)
#
compile: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=$(FLAGS)" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link:
$(CXX) $(FLAGS) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lGLU -lGL -lfltk\
-L/usr/X11R6/lib -lX11 -lm
gcc: compile link
#
# Linux
#
compile-linux: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O3 -Wall -Wno-uninitialized" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-linux:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lGLU -lGL -lfltk\
-L/usr/X11R6/lib -lX11 -lm -ldl
linux: compile-linux link-linux
#
# Linux fltk 2.0 (beta)
#
compile-fltk2: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-g -Wall" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(HOME)/SOURCES/fltk-2.0" \
); done
link-fltk2:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
$(HOME)/SOURCES/fltk-2.0/lib/libfltk_gl.so.2\
-lGLU -lGL \
$(HOME)/SOURCES/fltk-2.0/lib/libfltk.so.2 \
-L/usr/X11R6/lib -lX11 -lm
fltk2: compile-fltk2 link-fltk2
#
# Linux fltk 1.0 (obsolete)
#
compile-fltk1: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-g -Wall" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(HOME)/SOURCES/fltk" \
); done
link-fltk1:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(HOME)/SOURCES/fltk/lib -lfltk -lGLU -lGL \
-L/usr/X11R6/lib -lX11 -lm
fltk1: compile-fltk1 link-fltk1
#
# Linux, gcc-2.95.x (optimized build is very buggy)
#
compile-linux-gcc-2.95: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(HOME)/gcc-2.95.3/bin/g++" \
"CC=$(HOME)/gcc-2.95.3/bin/gcc" \
"OPT_FLAGS=-g" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=-I/usr/X11R6/include" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-linux-gcc-2.95:
$(HOME)/gcc-2.95.3/bin/g++ -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lGLU -lGL -lfltk\
-L/usr/X11R6/lib -lX11 -lm -ldl
linux-gcc-2.95: compile-linux-gcc-2.95 link-linux-gcc-2.95
distrib-linux-gcc-2.95:
make clean
make tag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=$(HOME)/gcc-2.95.3/bin/g++" \
"CC=$(HOME)/gcc-2.95.3/bin/gcc" \
"OPT_FLAGS=-g" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_BLACKBOX" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
$(HOME)/gcc-2.95.3/bin/g++ -o $(GMSH_BIN_DIR)/gmsh-batch $(GMSH_BOX_LIB) -lm -ldl
make clean
make linux-gcc-2.95
make distrib
rpm:
tar zcvf gmsh-$(GMSH_RELEASE).tar.gz $(GMSH_SOURCES)
mv gmsh-$(GMSH_RELEASE).tar.gz /usr/src/redhat/SOURCES
rpm -bb --define 'gmshversion $(GMSH_RELEASE)' utils/gmsh.spec
cp /usr/src/redhat/RPMS/i386/gmsh-$(GMSH_RELEASE)-?.i386.rpm .
cp /usr/src/redhat/BUILD/gmsh-$(GMSH_RELEASE)/gmsh-$(GMSH_RELEASE)-$(GMSH_UNAME).tgz .
#
# Linux SCOREC
#
compile-linux-scorec: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O2" \
"VERSION_FLAGS=-D_FLTK" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I/users/develop/develop/visual/fltk/1.0/include" \
); done
link-linux-scorec:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh-linux $(GMSH_FLTK_LIB) -lGLU -lGL \
/users/develop/develop/visual/fltk/1.0/lib/x86_linux/libfltk.a\
-L/usr/X11R6/lib -lX11 -lm -ldl
linux-scorec: compile-linux-scorec link-linux-scorec
#
# Digital (Compaq) OSF1/Digital Unix/Tru64
#
compile-osf1: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-osf1:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lGLU -lGL -lfltk\
-lX11 -lm
osf1: compile-osf1 link-osf1
distrib-osf1:
make clean
make tag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_BLACKBOX" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
$(CXX) -o $(GMSH_BIN_DIR)/gmsh-batch $(GMSH_BOX_LIB) -lm
make clean
make osf1
make distrib
#
# HP-UX
#
compile-hpux: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_FLTK -D_NODLL" \
"GL_INCLUDE=-I$(HOME)/SOURCES/Mesa-3.1/include" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-hpux:
g++ -Wl,+s -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl\
-L$(HOME)/SOURCES/Mesa-3.1/lib -lGLU -lGL -lfltk\
-lX11 -lm
hpux: compile-hpux link-hpux
distrib-hpux:
make clean
make tag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_BLACKBOX -D_NODLL" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
g++ -o $(GMSH_BIN_DIR)/gmsh-batch $(GMSH_BOX_LIB) -lm
make clean
make hpux
make distrib
#
# IBM AIX
#
compile-aix: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-D_BSD" \
"VERSION_FLAGS=-D_FLTK -D_NODLL" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-aix:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lGLU -lGL -lfltk\
-lX11 -lm
aix: compile-aix link-aix
distrib-aix:
make clean
make tag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-D_BSD" \
"VERSION_FLAGS=-D_BLACKBOX -D_NODLL" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
$(CXX) -o $(GMSH_BIN_DIR)/gmsh-batch $(GMSH_BOX_LIB) -lm
make clean
make aix
make distrib
#
# SGI Irix
#
compile-irix: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=CC" \
"CC=cc" \
"OPT_FLAGS=-O2 -OPT:Olimit=0 -LANG:std" \
"RANLIB=true"\
"AR=CC -mips3 -n32 -ar -o"\
"OS_FLAGS=-mips3 -n32" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-irix:
CC -O2 -mips3 -n32 -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lfltk -lX11 -lGLU -lGL -lm
irix: compile-irix link-irix
distrib-irix:
make clean
make tag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=CC" \
"CC=cc" \
"OPT_FLAGS=-O2 -OPT:Olimit=0 -LANG:std" \
"RANLIB=true"\
"AR=CC -mips3 -n32 -ar -o"\
"OS_FLAGS=-mips3 -n32" \
"VERSION_FLAGS=-D_BLACKBOX" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
CC -O2 -mips3 -n32 -o $(GMSH_BIN_DIR)/gmsh-batch $(GMSH_BOX_LIB) -lm
make clean
make irix
make distrib
#
# Cygwin
#
compile-cygwin: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-mwindows -DWIN32 -D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-cygwin:
g++ -Wl,--subsystem,windows -mwindows -o $(GMSH_BIN_DIR)/gmsh.exe\
$(GMSH_FLTK_LIB) Fltk/Win32Icon.res $(FLTK_DIR)/lib/libfltk_gl.a\
-lglu32 -lopengl32 $(FLTK_DIR)/lib/libfltk.a \
-lole32 -luuid -lcomctl32 -lwsock32 -lm
cygwin: compile-cygwin link-cygwin
distrib-cygwin:
make clean
make tag
make cygwin
make distrib-win
#
# Cygwin gertha-buro
#
cygwin-gertha-buro: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-DWIN32 -D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I../../fltk" \
); done
g++ -Wl,--subsystem,windows -o $(GMSH_BIN_DIR)/gmsh.exe $(GMSH_FLTK_LIB)\
Fltk/Win32Icon.res ../fltk/lib/libfltk.a\
-lglu32 -lopengl32 -lgdi32 -lwsock32 -lm
#
# Cygwin laptop jf
#
cygwin-laptopjf: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=-DWIN32 -D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I../../fltk-1.0.9" \
); done
g++ -Wl,--subsystem,windows -o $(GMSH_BIN_DIR)/gmsh-cyg.exe $(GMSH_FLTK_LIB)\
Fltk/Win32Icon.res ../fltk-1.0.9/lib/libfltk.a\
-lglu32 -lopengl32 -lgdi32 -lwsock32 -lm
cygwin-laptopjf_tag: tag cygwin-laptopjf
#
# Sun SunOS
#
compile-sunos: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_FLTK -D_NODLL" \
"GL_INCLUDE=-I$(HOME)/SOURCES/Mesa-3.1/include" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-sunos:
g++ -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl\
-L$(HOME)/SOURCES/Mesa-3.1/lib -lGLU -lGL -lfltk\
-lX11 -lXext -lsocket -lnsl -ldl -lm
sunos: compile-sunos link-sunos
distrib-sunos:
make clean
make tag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_BLACKBOX -D_NODLL" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
g++ -o $(GMSH_BIN_DIR)/gmsh-batch $(GMSH_BOX_LIB) -lm
make clean
make sunos
make distrib
#
# Solaris SCOREC
#
compile-solaris-scorec: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O3" \
"VERSION_FLAGS=-D_FLTK" \
"OS_FLAGS=" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I/users/develop/develop/visual/fltk/1.0/include" \
); done
link-solaris-scorec:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh-sun $(GMSH_FLTK_LIB) -lGLU -lGL \
/users/develop/develop/visual/fltk/1.0/lib/sun4_5/libfltk-gcc.a\
-L/usr/X11R6/lib -lX11 -lm -ldl -lsocket
solaris-scorec: compile-solaris-scorec link-solaris-scorec
#
# MacOS X
# - we don't use resource forks anymore in the distributed version, but we
# leave the Rez step so that one can still launch a working version
# from the command line without having to do "distrib-mac".
# - use 'otool -L' to check linked dynamic libraries
#
compile-macosx: initialtag
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"AR=ar ruv" \
"OPT_FLAGS=-O2" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_FLTK -D_NODLL" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
link-macosx:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB) -L$(FLTK_DIR)/lib -lfltk_gl -lfltk \
-framework AGL -framework OpenGL -framework Carbon -framework ApplicationServices
/Developer/Tools/Rez -t APPL -o $(GMSH_BIN_DIR)/gmsh $(FLTK_DIR)/FL/mac.r
macosx: compile-macosx link-macosx
distrib-macosx:
make clean
make tag
make macosx
make distrib-mac
# ----------------------------------------------------------------------
# Rules for developers
# ----------------------------------------------------------------------
gmsh: link
static:
@for i in $(GMSH_FLTK_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=-O3" \
"OS_FLAGS=-D_LITTLE_ENDIAN" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=-I$(HOME)/SOURCES/Mesa-static/include" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
$(CXX) -o $(GMSH_BIN_DIR)/gmshm $(GMSH_FLTK_LIB)\
$(FLTK_DIR)/lib/libfltk_gl.a\
$(HOME)/SOURCES/Mesa-static/lib/libGLU.a\
$(HOME)/SOURCES/Mesa-static/lib/libGL.a\
$(FLTK_DIR)/lib/libfltk.a -lX11 -lm
purify:
purify -cache-dir=/space g++ -o $(GMSH_BIN_DIR)/gmsh-sun $(GMSH_FLTK_LIB) -lGLU -lGL \
/users/develop/develop/visual/fltk/1.0/lib/sun4_5/libfltk-gcc.a\
-L/usr/X11R6/lib -lX11 -lm -ldl -lsocket
efence:
$(CXX) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
-L$(FLTK_DIR)/lib -lfltk_gl -lGLU -lGL -lfltk\
-L/usr/X11R6/lib -lX11 -lefence -lm
# ----------------------------------------------------------------------
# Utilities
# ----------------------------------------------------------------------
parser:
cd Parser && $(MAKE) parser
utilities:
cd utils && $(MAKE)
purge:
for i in "." $(GMSH_DIR) $(GMSH_LIB_DIR) $(GMSH_ARCHIVE_DIR)\
$(GMSH_DEMO_DIR) $(GMSH_TUTORIAL_DIR) $(GMSH_DOC_DIR); \
do (cd $$i && $(RM) $(RMFLAGS) *~ *~~ .gmsh-tmp .gmsh-errors gmon.out); \
done
clean:
for i in $(GMSH_DIR) $(GMSH_DOC_DIR) $(GMSH_LIB_DIR) ; \
do (cd $$i && $(MAKE) clean); \
done
$(RM) $(RMFLAGS) $(GMSH_VERSION_FILE)
depend:
for i in $(GMSH_DIR); \
do (cd $$i && $(MAKE) depend \
"CXX=$(CXX)" \
"CC=$(CC)" \
"VERSION_FLAGS=-D_FLTK" \
"GL_INCLUDE=" \
"GUI_INCLUDE=-I$(FLTK_DIR)" \
); done
nodepend:
for i in $(GMSH_DIR) ; do \
(cd $$i && (sed '/^# DO NOT DELETE THIS LINE/q' Makefile) > Makefile.new \
&& cp Makefile Makefile.bak \
&& cp Makefile.new Makefile \
&& $(RM) $(RMFLAGS) Makefile.new); \
done
tag:
$(RM) $(RMFLAGS) $(GMSH_VERSION_FILE)
echo "#define GMSH_MAJOR_VERSION $(GMSH_MAJOR_VERSION)" > $(GMSH_VERSION_FILE)
echo "#define GMSH_MINOR_VERSION $(GMSH_MINOR_VERSION)" >> $(GMSH_VERSION_FILE)
echo "#define GMSH_PATCH_VERSION $(GMSH_PATCH_VERSION)" >> $(GMSH_VERSION_FILE)
echo "#define GMSH_VERSION ((double)GMSH_MAJOR_VERSION + \\" >> $(GMSH_VERSION_FILE)
echo " 0.01 * (double)GMSH_MINOR_VERSION + \\" >> $(GMSH_VERSION_FILE)
echo " 0.0001 * (double)GMSH_PATCH_VERSION)" >> $(GMSH_VERSION_FILE)
echo "#define GMSH_DATE \"`date`\"" >> $(GMSH_VERSION_FILE)
echo "#define GMSH_HOST \"`hostname`\"" >> $(GMSH_VERSION_FILE)
echo "#define GMSH_PACKAGER \"`whoami`\"" >> $(GMSH_VERSION_FILE)
echo "#define GMSH_OS \"`uname -sr`\"" >> $(GMSH_VERSION_FILE)
initialtag:
@if [ ! -r $(GMSH_VERSION_FILE) ]; then \
$(MAKE) tag ; \
fi
tags:
gtags
htags
tgz:
if (test -f $(GMSH_ARCHIVE).tar.gz); then \
mv -f $(GMSH_ARCHIVE).tar.gz $(GMSH_ARCHIVE).tar.gz~; \
fi
tar cvf $(GMSH_ARCHIVE).tar $(GMSH_SOURCES)
gzip $(GMSH_ARCHIVE).tar
chmod 640 $(GMSH_ARCHIVE).tar.gz
minizip:
tar jcvf gmsh-`date "+%Y.%m.%d"`.tar.bz2 \
`ls Makefile */Makefile */*.[chyl] */*.[ch]pp */*.rc */*.res */*.ico`
# Add doc/COPYING as soon as we are GPL'ed
distrib:
rm -rf gmsh-$(GMSH_RELEASE)
mkdir gmsh-$(GMSH_RELEASE)
strip $(GMSH_BIN_DIR)/gmsh
cp $(GMSH_BIN_DIR)/gmsh gmsh-$(GMSH_RELEASE)
strip $(GMSH_BIN_DIR)/gmsh-batch
cp $(GMSH_BIN_DIR)/gmsh-batch gmsh-$(GMSH_RELEASE)
cp doc/gmsh.1 doc/FORMATS doc/VERSIONS doc/FAQ doc/CONTRIBUTORS gmsh-$(GMSH_RELEASE)
cp -R tutorial gmsh-$(GMSH_RELEASE)
cp -R demos gmsh-$(GMSH_RELEASE)
rm -rf gmsh-$(GMSH_RELEASE)/*/CVS
rm -f gmsh-$(GMSH_RELEASE)/*/*.msh
rm -f gmsh-$(GMSH_RELEASE)/*/*~
tar cvf gmsh-$(GMSH_RELEASE)-$(GMSH_UNAME).tar gmsh-$(GMSH_RELEASE)
gzip gmsh-$(GMSH_RELEASE)-$(GMSH_UNAME).tar
mv gmsh-$(GMSH_RELEASE)-$(GMSH_UNAME).tar.gz gmsh-$(GMSH_RELEASE)-$(GMSH_UNAME).tgz
distrib-win:
strip $(GMSH_BIN_DIR)/gmsh.exe
cp $(GMSH_BIN_DIR)/gmsh.exe ../gmsh-distrib
cp doc/README.txt ../gmsh-distrib
cp doc/FORMATS ../gmsh-distrib/FORMATS.txt
cp doc/VERSIONS ../gmsh-distrib/VERSIONS.txt
cp doc/FAQ ../gmsh-distrib/FAQ.txt
cp doc/CONTRIBUTORS ../gmsh-distrib/CONTRIBUTORS.txt
cd utils && unix2dos ../../gmsh-distrib/*.txt
cp -R tutorial ../gmsh-distrib
cp -R demos ../gmsh-distrib
rm -rf ../gmsh-distrib/*/CVS
rm -f ../gmsh-distrib/*/*.msh
rm -f ../gmsh-distrib/*/*~
cd utils && unix2dos ../../gmsh-distrib/tutorial/* ../../gmsh-distrib/demos/*
cd ../gmsh-distrib && zip -r gmsh-$(GMSH_RELEASE)-Windows.zip *
mv ../gmsh-distrib/gmsh-$(GMSH_RELEASE)-Windows.zip .
rm -rf ../gmsh-distrib/*.txt
rm -rf ../gmsh-distrib/tutorial
rm -rf ../gmsh-distrib/demos
distrib-mac:
rm -rf gmsh-$(GMSH_RELEASE)
mkdir gmsh-$(GMSH_RELEASE)
mkdir gmsh-$(GMSH_RELEASE)/Gmsh.app
mkdir gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents
mkdir gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/Resources
mkdir gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/MacOS
echo "APPLGMSH" > gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/PkgInfo
echo -e "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"\
"<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\""\
" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n"\
"<plist version=\"1.0\">\n"\
" <dict>\n"\
" <key>CFBundleName</key><string>Gmsh</string>\n"\
" <key>CFBundleExecutable</key><string>Gmsh</string>\n"\
" <key>CFBundlePackageType</key><string>APPL</string>\n"\
" <key>CFBundleVersion</key><string>$(GMSH_RELEASE)</string>\n"\
" <key>CFBundleShortVersionString</key><string>$(GMSH_RELEASE)</string>\n"\
" <key>CFBundleIconFile</key><string>gmsh.icns</string>\n"\
" <key>CFBundleSignature</key><string>GMSH</string>\n"\
" <key>CFBundleGetInfoString</key><string>Gmsh $(GMSH_RELEASE),"\
"(c) C. Geuzaine and J.-F. Remacle, 1997-2003</string>\n"\
" <key>CFBundleIdentifier</key><string>org.geuz.Gmsh</string>\n"\
" <key>NSHelpFile</key><string>tutorial.html</string>\n"\
" </dict>\n"\
"</plist>" > gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/Info.plist
strip $(GMSH_BIN_DIR)/gmsh
cp $(GMSH_BIN_DIR)/gmsh gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/MacOS/Gmsh
cp Fltk/MacIcons.icns gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/Resources/gmsh.icns
cp tutorial/tutorial.html gmsh-$(GMSH_RELEASE)/Gmsh.app/Contents/Resources
cp -R doc/gmsh.1 tutorial demos gmsh-$(GMSH_RELEASE)
cp doc/FORMATS gmsh-$(GMSH_RELEASE)/FORMATS.txt
cp doc/VERSIONS gmsh-$(GMSH_RELEASE)/VERSIONS.txt
cp doc/FAQ gmsh-$(GMSH_RELEASE)/FAQ.txt
cp doc/CONTRIBUTORS gmsh-$(GMSH_RELEASE)/CONTRIBUTORS.txt
rm -rf gmsh-$(GMSH_RELEASE)/*/CVS\
gmsh-$(GMSH_RELEASE)/*/*~\
gmsh-$(GMSH_RELEASE)/*/*.msh
tar zcvf gmsh-$(GMSH_RELEASE)-MacOSX.tgz gmsh-$(GMSH_RELEASE)
dem:
gtar zcvf gmsh-demos.tgz $(GMSH_DEMO_DIR)
gtar zcvf gmsh-tutorial.tgz $(GMSH_TUTORIAL_DIR)
# ----------------------------------------------------------------------
# Black Box
# ----------------------------------------------------------------------
bb: initialtag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=$(CXX)" \
"CC=$(CC)" \
"OPT_FLAGS=$(FLAGS)" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_BLACKBOX" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
$(CXX) -o $(GMSH_BIN_DIR)/gmsh-bb $(GMSH_BOX_LIB) -lm
bb-parallel: initialtag
@for i in $(GMSH_BOX_DIR); do (cd $$i && $(MAKE) \
"CXX=mpiCC" \
"CC=mpicc" \
"OPT_FLAGS=-O3" \
"OS_FLAGS=" \
"VERSION_FLAGS=-D_BLACKBOX -DPARALLEL" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
mpiCC -o $(GMSH_BIN_DIR)/gmsh-bb $(GMSH_BOX_LIB) -lm
bb-mingw: initialtag
@for i in $(GMSH_BOX_DIR) ; do (cd $$i && $(MAKE) \
"CXX=g++" \
"CC=gcc" \
"OPT_FLAGS=-O3" \
"OS_FLAGS=-mno-cygwin -I/mingw/include" \
"VERSION_FLAGS=-D_BLACKBOX" \
"GL_INCLUDE=" \
"GUI_INCLUDE=" \
); done
g++ -o $(GMSH_BIN_DIR)/gmsh.exe -mno-cygwin -L/mingw/lib $(GMSH_BOX_LIB) -lm
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment