From b124288cdd9af9b4649b1b5f34e03eb1c2b6c790 Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Sun, 19 May 2002 20:29:47 +0000
Subject: [PATCH] GPL, util compile fix, Makefile reorg

---
 Makefile        | 424 ++++++++++++++++++++++++------------------------
 utils/Makefile  |   4 +-
 utils/gmsh.spec |   2 +-
 3 files changed, 214 insertions(+), 216 deletions(-)

diff --git a/Makefile b/Makefile
index 6b43e6385f..a7e1e4161d 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.220 2002-05-19 19:59:09 geuzaine Exp $
+# $Id: Makefile,v 1.221 2002-05-19 20:29:47 geuzaine Exp $
 
 GMSH_MAJOR_VERSION = 1
 GMSH_MINOR_VERSION = 35
@@ -34,7 +34,6 @@ GMSH_FLTK_LIB = -L$(GMSH_LIB_DIR) -lGmshFltk -lGmshParser -lGmshGraphics -lGmshM
 
 GMSH_RELEASE = $(GMSH_MAJOR_VERSION).$(GMSH_MINOR_VERSION).$(GMSH_PATCH_VERSION)
 GMSH_ARCHIVE = $(GMSH_ARCHIVE_DIR)/gmsh-`date "+%Y.%m.%d"`
-GMSH_SRCRPM = gmsh-$(GMSH_RELEASE)
 GMSH_UNAME = `uname`
 GMSH_SOURCES = `find . \( ! -name "*.tar*" -a ! -name "*.tgz" \
                        -a ! -name "*.o"    -a ! -name "lib*.a"   \
@@ -61,9 +60,27 @@ default:
 	@echo "If your system is not listed above, edit the Makefile"
 
 # ----------------------------------------------------------------------
-# Rules for developers
+# Ready to compile for some platforms
 # ----------------------------------------------------------------------
 
+#
+# Source distribution
+#
+source:
+	tar zcvf gmsh.tgz `ls README* COPYING Makefile */Makefile */*.[chyl]\
+                           */*.rc */*.res */*.ico */*.cpp */*.pl */*.pm */*.opt */*.spec`\
+                           demos tutorial
+	mkdir gmsh-$(GMSH_RELEASE)
+	cd gmsh-$(GMSH_RELEASE) && tar zxvf ../gmsh.tgz
+	cd gmsh-$(GMSH_RELEASE) && zip -r gmsh-$(GMSH_RELEASE)-source.zip *
+	mv gmsh-$(GMSH_RELEASE)/gmsh-$(GMSH_RELEASE)-source.zip .
+	rm -f gmsh.tgz
+	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)" \
@@ -75,218 +92,13 @@ compile: initialtag
            "GUI_INCLUDE=-I$(HOME)/SOURCES/fltk-1.1" \
         ); done
 
-link: gmsh
-
-gmsh:
+link:
 	$(CXX) $(FLAGS) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB)\
                -L$(HOME)/SOURCES/fltk-1.1/lib -lfltk_gl -lGLU -lGL -lfltk\
                -L/usr/X11R6/lib -lX11 -lm
 
 gcc: compile 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$(HOME)/SOURCES/fltk-1.1" \
-        ); done
-	$(CXX) -o $(GMSH_BIN_DIR)/gmshm $(GMSH_FLTK_LIB)\
-                 $(HOME)/SOURCES/fltk-1.1/lib/libfltk_gl.a\
-                 $(HOME)/SOURCES/Mesa-static/lib/libGLU.a\
-                 $(HOME)/SOURCES/Mesa-static/lib/libGL.a\
-                 $(HOME)/SOURCES/fltk-1.1/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$(HOME)/SOURCES/fltk-1.1/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
-
-depend:
-	for i in $(GMSH_DIR); \
-        do (cd $$i && $(MAKE) depend \
-           "CXX=$(CXX)" \
-           "CC=$(CC)" \
-           "VERSION_FLAGS=-D_FLTK" \
-           "GL_INCLUDE=" \
-           "GUI_INCLUDE=-I$(HOME)/SOURCES/fltk-1.1" \
-        ); 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) Common/GmshVersion.h
-	echo "#define GMSH_MAJOR_VERSION $(GMSH_MAJOR_VERSION)" >  Common/GmshVersion.h
-	echo "#define GMSH_MINOR_VERSION $(GMSH_MINOR_VERSION)" >> Common/GmshVersion.h
-	echo "#define GMSH_PATCH_VERSION $(GMSH_PATCH_VERSION)" >> Common/GmshVersion.h
-	echo "#define GMSH_VERSION  ((double)GMSH_MAJOR_VERSION + \\" >> Common/GmshVersion.h
-	echo "                0.01 * (double)GMSH_MINOR_VERSION + \\" >> Common/GmshVersion.h
-	echo "              0.0001 * (double)GMSH_PATCH_VERSION)"     >> Common/GmshVersion.h
-	echo "#define GMSH_DATE     \"`date`\""      >> Common/GmshVersion.h
-	echo "#define GMSH_HOST     \"`hostname`\""  >> Common/GmshVersion.h
-	echo "#define GMSH_PACKAGER \"`whoami`\""    >> Common/GmshVersion.h
-	echo "#define GMSH_OS       \"`uname -sr`\"" >> Common/GmshVersion.h
-
-initialtag:
-	@if [ ! -r Common/GmshVersion.h ]; 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] */*.cpp`
-
-src:
-	tar cvf $(GMSH_SRCRPM).tar $(GMSH_SOURCES)
-	gzip $(GMSH_SRCRPM).tar
-
-distrib:
-	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
-	rm -rf gmsh-$(GMSH_RELEASE)
-
-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
-
-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
-
-# ----------------------------------------------------------------------
-# Ready to compile for some platforms
-# ----------------------------------------------------------------------
-
-#
-# Source distribution
-#
-source:
-	tar zcvf gmsh.tgz `ls README* COPYING Makefile */Makefile */*.[chyl]\
-                           */*.rc */*.res */*.ico */*.cpp */*.pl */*.pm */*.opt */*.spec`\
-                           demos tutorial
-	mkdir gmsh-$(GMSH_RELEASE)
-	cd gmsh-$(GMSH_RELEASE) && tar zxvf ../gmsh.tgz
-	cd gmsh-$(GMSH_RELEASE) && zip -r gmsh-$(GMSH_RELEASE)-source.zip *
-	mv gmsh-$(GMSH_RELEASE)/gmsh-$(GMSH_RELEASE)-source.zip .
-	rm -f gmsh.tgz
-	tar zcvf gmsh-$(GMSH_RELEASE)-source.tgz gmsh-$(GMSH_RELEASE)
-	rm -rf gmsh-$(GMSH_RELEASE)
-
 #
 # Linux
 #
@@ -380,11 +192,12 @@ distrib-linux-gcc-2.95:
 	make clean
 	make linux-gcc-2.95
 	make distrib
-rpm: src
-	mv $(GMSH_SRCRPM).tar.gz /usr/src/redhat/SOURCES
+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_SRCRPM)-?.i386.rpm .
-	cp /usr/src/redhat/BUILD/$(GMSH_SRCRPM)/gmsh-$(GMSH_RELEASE)-$(GMSH_UNAME).tgz .
+	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
@@ -680,3 +493,188 @@ link-macosx:
 	/Developer/Tools/Rez -t APPL -o $(GMSH_BIN_DIR)/gmsh ../fltk/FL/mac.r
 macosx: compile-macosx link-macosx
 
+# ----------------------------------------------------------------------
+# 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$(HOME)/SOURCES/fltk-1.1" \
+        ); done
+	$(CXX) -o $(GMSH_BIN_DIR)/gmshm $(GMSH_FLTK_LIB)\
+                 $(HOME)/SOURCES/fltk-1.1/lib/libfltk_gl.a\
+                 $(HOME)/SOURCES/Mesa-static/lib/libGLU.a\
+                 $(HOME)/SOURCES/Mesa-static/lib/libGL.a\
+                 $(HOME)/SOURCES/fltk-1.1/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$(HOME)/SOURCES/fltk-1.1/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
+
+depend:
+	for i in $(GMSH_DIR); \
+        do (cd $$i && $(MAKE) depend \
+           "CXX=$(CXX)" \
+           "CC=$(CC)" \
+           "VERSION_FLAGS=-D_FLTK" \
+           "GL_INCLUDE=" \
+           "GUI_INCLUDE=-I$(HOME)/SOURCES/fltk-1.1" \
+        ); 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) Common/GmshVersion.h
+	echo "#define GMSH_MAJOR_VERSION $(GMSH_MAJOR_VERSION)" >  Common/GmshVersion.h
+	echo "#define GMSH_MINOR_VERSION $(GMSH_MINOR_VERSION)" >> Common/GmshVersion.h
+	echo "#define GMSH_PATCH_VERSION $(GMSH_PATCH_VERSION)" >> Common/GmshVersion.h
+	echo "#define GMSH_VERSION  ((double)GMSH_MAJOR_VERSION + \\" >> Common/GmshVersion.h
+	echo "                0.01 * (double)GMSH_MINOR_VERSION + \\" >> Common/GmshVersion.h
+	echo "              0.0001 * (double)GMSH_PATCH_VERSION)"     >> Common/GmshVersion.h
+	echo "#define GMSH_DATE     \"`date`\""      >> Common/GmshVersion.h
+	echo "#define GMSH_HOST     \"`hostname`\""  >> Common/GmshVersion.h
+	echo "#define GMSH_PACKAGER \"`whoami`\""    >> Common/GmshVersion.h
+	echo "#define GMSH_OS       \"`uname -sr`\"" >> Common/GmshVersion.h
+
+initialtag:
+	@if [ ! -r Common/GmshVersion.h ]; 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] */*.cpp`
+
+distrib:
+	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
+	rm -rf gmsh-$(GMSH_RELEASE)
+
+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
+
+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
diff --git a/utils/Makefile b/utils/Makefile
index 8ea9521119..e0c0bb94ec 100644
--- a/utils/Makefile
+++ b/utils/Makefile
@@ -1,4 +1,4 @@
-# $Id: Makefile,v 1.8 2002-05-18 21:08:22 geuzaine Exp $
+# $Id: Makefile,v 1.9 2002-05-19 20:29:47 geuzaine Exp $
 
 CXX       = c++
 OPT_FLAGS = -g
@@ -8,7 +8,7 @@ RMFLAGS = -f
 
 dxf2geo: dxf2geo.c message.c 
 	$(CXX) $(OPT_FLAGS) -o ../bin/dxf2geo -I../DataStr\
-              dxf2geo.c message.c ../lib/libDataStr.a -lm
+              dxf2geo.c message.c ../lib/libGmshDataStr.a -lm
 
 mysolver: mysolver.c
 	$(CXX) $(OPT_FLAGS) -o mysolver.exe mysolver.c GmshClient.c
diff --git a/utils/gmsh.spec b/utils/gmsh.spec
index e8871035a8..bf3178cfbd 100644
--- a/utils/gmsh.spec
+++ b/utils/gmsh.spec
@@ -4,7 +4,7 @@ Name: gmsh
 Version: %{gmshversion}
 Source: gmsh-%{version}.tar.gz
 Release: 1
-Copyright: distributable
+Copyright: GPL
 Group: Applications/Engineering
 URL: http://www.geuz.org/gmsh/
 Packager: geuz@geuz.org
-- 
GitLab