diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp index 2fce55f11f8240b6c3ffd8f63f05cbd15f055eaf..4844d94f011c059a23eab9cf93fb3754d3e1bb10 100644 --- a/Fltk/Callbacks.cpp +++ b/Fltk/Callbacks.cpp @@ -1,4 +1,4 @@ -// $Id: Callbacks.cpp,v 1.15 2001-01-11 14:11:56 geuzaine Exp $ +// $Id: Callbacks.cpp,v 1.16 2001-01-11 16:00:28 colignon Exp $ #include "Gmsh.h" #include "GmshUI.h" @@ -15,7 +15,20 @@ #include "GUI.h" #include "Callbacks.h" +#include <FL/Fl.H> +#include <FL/Fl_Button.H> +#include <FL/Fl_Window.H> +#include <FL/Fl_Input.H> #include <FL/fl_file_chooser.H> +#include <stdio.h> +#include <string.h> +#include <errno.h> +#include <stdlib.h> +#include <FL/fl_file_chooser.H> +#include <stdio.h> +#include <string.h> +#include <errno.h> +#include <stdlib.h> extern GUI *WID; extern Mesh M; diff --git a/Graphics/CreateFile.cpp b/Graphics/CreateFile.cpp index 1cd92be5dc809fc29ec5061436ffdb7f97bfb56b..8fd922c612048c798caca4ae2a01e9ae37098c7e 100644 --- a/Graphics/CreateFile.cpp +++ b/Graphics/CreateFile.cpp @@ -1,4 +1,4 @@ -// $Id: CreateFile.cpp,v 1.8 2001-01-11 14:18:07 geuzaine Exp $ +// $Id: CreateFile.cpp,v 1.9 2001-01-11 16:00:28 colignon Exp $ #include "Gmsh.h" #include "GmshUI.h" @@ -22,7 +22,7 @@ extern XContext_T XCTX; #include "gl2ps.h" #include "gl2gif.h" -#if !defined(WIN32) && !defined(__CYGWIN__) +#if !defined(WIN32) #include "gl2jpeg.h" #endif @@ -104,7 +104,7 @@ void CreateFile (char *name, int format) { break; #endif -#if !defined(WIN32) && !defined(__CYGWIN__) +#if !defined(WIN32) case FORMAT_JPEG : if(!(fp = fopen(name,"wb"))) { Msg(WARNING, "Unable to Open File '%s'", name); diff --git a/Graphics/gl2jpeg.cpp b/Graphics/gl2jpeg.cpp index 081323d8102dd0a63b9864387549b05850541055..fc327011cb1f8afa85eafc30928715125fe6f42f 100644 --- a/Graphics/gl2jpeg.cpp +++ b/Graphics/gl2jpeg.cpp @@ -1,6 +1,6 @@ -// $Id: gl2jpeg.cpp,v 1.5 2001-01-11 14:18:07 geuzaine Exp $ +// $Id: gl2jpeg.cpp,v 1.6 2001-01-11 16:00:28 colignon Exp $ -#if !defined(WIN32) && !defined(__CYGWIN__) +#if !defined(WIN32) #include "Gmsh.h" #include "GmshUI.h" @@ -61,5 +61,5 @@ void create_jpeg(FILE *outfile, int width, int height, int quality){ } -#endif //if !defined(__CYGWIN__) +#endif //if !defined(WIN32) diff --git a/Makefile b/Makefile index 3aadf6da87ce5ef277d016dc0c2a3980fc7718d0..f0e18bc262d5a9440d3c5f1f6c2d6c8b3c9936aa 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.36 2001-01-11 14:26:18 geuzaine Exp $ +# $Id: Makefile,v 1.37 2001-01-11 16:00:28 colignon Exp $ # ---------------------------------------------------------------------- # Makefile for Gmsh # ---------------------------------------------------------------------- @@ -35,6 +35,7 @@ MESA_MOTIF_STATIC_LIB = $(HOME)/SOURCES/Mesa-static/lib/libGLw.a GMSH_DIR = Adapt Common DataStr Geo Graphics Mesh Parser Motif Fltk jpeg utils GMSH_XMOTIF_DIR = Adapt Common DataStr Geo Graphics Mesh Parser Motif jpeg GMSH_FLTK_DIR = Adapt Common DataStr Geo Graphics Mesh Parser Fltk jpeg +GMSH_FLTKWIN_DIR = Adapt Common DataStr Geo Graphics Mesh Parser Fltk GMSH_BOX_DIR = Adapt Box Common DataStr Geo Mesh Parser GMSH_UTILS_DIR = utils GMSH_BIN_DIR = bin @@ -47,6 +48,8 @@ GMSH_ARCHIVE_DIR = archives -lAdapt -lCommon -lDataStr $(JPEG_LIB) GMSH_FLTK_LIB = -L$(GMSH_LIB_DIR) -lFltk -lParser -lGraphics -lMesh -lGeo\ -lAdapt -lCommon -lDataStr $(JPEG_LIB) +GMSH_FLTKWIN_LIB = -L$(GMSH_LIB_DIR) -lFltk -lParser -lGraphics -lMesh -lGeo\ + -lAdapt -lCommon -lDataStr GMSH_BOX_LIB = -L$(GMSH_LIB_DIR) -lBox -lParser -lMesh -lGeo\ -lAdapt -lCommon -lDataStr GMSH_ARCHIVE = $(GMSH_ARCHIVE_DIR)/gmsh-`date "+%Y.%m.%d"` @@ -78,6 +81,26 @@ fltk: initialtag "GUI_INCLUDE=$(FLTK_INC)" \ ); done +fltkwin: initialtag + @for i in $(GMSH_FLTKWIN_DIR); do (cd $$i && $(MAKE) \ + "CC=g++ -mno-cygwin -I/mingw/include" \ + "C_FLAGS=-O2 -DWIN32" \ + "OS_FLAGS=-D_LITTLE_ENDIAN" \ + "VERSION_FLAGS=-D_FLTK" \ + "GL_INCLUDE=$(OPENGL_INC)" \ + "GUI_INCLUDE=$(FLTK_INC)" \ + ); done + +fltkcygwin: initialtag + @for i in $(GMSH_FLTKWIN_DIR); do (cd $$i && $(MAKE) \ + "CC=g++" \ + "C_FLAGS=-O2 -DWIN32" \ + "OS_FLAGS=-D_LITTLE_ENDIAN" \ + "VERSION_FLAGS=-D_FLTK" \ + "GL_INCLUDE=$(OPENGL_INC)" \ + "GUI_INCLUDE=$(FLTK_INC)" \ + ); done + threads: initialtag @for i in $(GMSH_XMOTIF_DIR); do (cd $$i && $(MAKE) \ "CC=$(CC)" \ @@ -113,8 +136,11 @@ gmsh3: $(FLTK_LIB) -lm gmshwin: - $(CC) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB) \ - -L$(HOME)/SOURCES/fltk/lib -lfltk -lglu32 -lopengl32 -lgdi32 -lwsock32 -lm + g++ -mno-cygwin -L/mingw/lib -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTKWIN_LIB) \ + $(HOME)/SOURCES/fltk/lib/libfltk.a -lglu32 -lopengl32 -lgdi32 -lwsock32 -lm +gmshcygwin: + g++ -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTKWIN_LIB) \ + $(HOME)/SOURCES/fltk/lib/libfltk.a -lglu32 -lopengl32 -lgdi32 -lwsock32 -lm gmsh4: $(CC) -o $(GMSH_BIN_DIR)/gmsh $(GMSH_FLTK_LIB) $(MESA_LIB) \ diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 38062597e8beb9608d2b2a5841936f17c9b9a3a2..0c3573c4e5d143a0d0d4666ae4c4facb2e9e69bc 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -170,7 +170,7 @@ #line 1 "Gmsh.y" -// $Id: Gmsh.tab.cpp,v 1.59 2001-01-10 10:06:19 geuzaine Exp $ +// $Id: Gmsh.tab.cpp,v 1.60 2001-01-11 16:00:28 colignon Exp $ #include <stdarg.h> @@ -2500,7 +2500,7 @@ static const short yycheck[] = { 23, 166, 167, -1, -1, -1, -1, -1, 173, -1, 175 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -#line 3 "/usr/local/share/bison.simple" +#line 3 "/usr/share/bison.simple" /* Skeleton output parser for bison, Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. @@ -2693,7 +2693,7 @@ __yy_memcpy (char *to, char *from, int count) #endif #endif -#line 196 "/usr/local/share/bison.simple" +#line 196 "/usr/share/bison.simple" /* The user can define YYPARSE_PARAM as the name of an argument to be passed into yyparse. The argument should have type void *. @@ -4595,12 +4595,12 @@ case 203: } else if(!strcmp(yyvsp[-2].c, "Print")){ - if(!CTX.interactive) CreateFile(yyvsp[-1].c, CTX.print.format); + //if(!CTX.interactive) CreateFile($2, CTX.print.format); } else if(!strcmp(yyvsp[-2].c, "Save")){ - CreateFile(yyvsp[-1].c, CTX.mesh.format); + //CreateFile($2, CTX.mesh.format); } else if(!strcmp(yyvsp[-2].c, "Merge")){ @@ -5871,7 +5871,7 @@ case 342: break;} } /* the action file gets copied in in place of this dollarsign */ -#line 498 "/usr/local/share/bison.simple" +#line 498 "/usr/share/bison.simple" yyvsp -= yylen; yyssp -= yylen; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index ff26e03edf93c4315e180a0c60313b581518c2ff..8820bedddd5a325dfa000ea08a7da9d4e0c8c92e 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,6 +1,6 @@ %{ -// $Id: Gmsh.y,v 1.52 2001-01-09 13:28:49 geuzaine Exp $ +// $Id: Gmsh.y,v 1.53 2001-01-11 16:00:28 colignon Exp $ #include <stdarg.h> @@ -1630,12 +1630,12 @@ Command : } else if(!strcmp($1, "Print")){ - if(!CTX.interactive) CreateFile($2, CTX.print.format); + //if(!CTX.interactive) CreateFile($2, CTX.print.format); } else if(!strcmp($1, "Save")){ - CreateFile($2, CTX.mesh.format); + //CreateFile($2, CTX.mesh.format); } else if(!strcmp($1, "Merge")){ diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index b639cfa7d298d71cb1b8092a679ef7bead7c91ba..e6d918e4ccede961d837455a9053d6689b8212ec 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.59 2001-01-10 10:06:20 geuzaine Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.60 2001-01-11 16:00:28 colignon Exp $ */ #define FLEX_SCANNER @@ -127,7 +127,6 @@ extern FILE *yyin, *yyout; { \ /* Undo effects of setting up yytext. */ \ *yy_cp = yy_hold_char; \ - YY_RESTORE_YY_MORE_OFFSET \ yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \ YY_DO_BEFORE_ACTION; /* set up yytext again */ \ } \ @@ -237,7 +236,7 @@ void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b )); #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer ) YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size )); -YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str )); +YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *str )); YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len )); static void *yy_flex_alloc YY_PROTO(( yy_size_t )); @@ -971,13 +970,12 @@ static char *yy_last_accepting_cpos; #define REJECT reject_used_but_not_detected #define yymore() yymore_used_but_not_detected #define YY_MORE_ADJ 0 -#define YY_RESTORE_YY_MORE_OFFSET char *yytext; #line 1 "Gmsh.l" #define INITIAL 0 #line 2 "Gmsh.l" -// $Id: Gmsh.yy.cpp,v 1.59 2001-01-10 10:06:20 geuzaine Exp $ +// $Id: Gmsh.yy.cpp,v 1.60 2001-01-11 16:00:28 colignon Exp $ #include <stdio.h> #include <stdlib.h> @@ -1020,7 +1018,7 @@ void skipline(void); && ferror( yyin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); -#line 1024 "Gmsh.yy.cpp" +#line 1022 "Gmsh.yy.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1042,10 +1040,6 @@ static void yyunput YY_PROTO(( int c, char *buf_ptr )); static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int )); #endif -#ifdef YY_NEED_STRLEN -static int yy_flex_strlen YY_PROTO(( yyconst char * )); -#endif - #ifndef YY_NO_INPUT #ifdef __cplusplus static int yyinput YY_PROTO(( void )); @@ -1174,7 +1168,7 @@ YY_DECL #line 63 "Gmsh.l" -#line 1178 "Gmsh.yy.cpp" +#line 1172 "Gmsh.yy.cpp" if ( yy_init ) { @@ -2148,7 +2142,7 @@ YY_RULE_SETUP #line 273 "Gmsh.l" ECHO; YY_BREAK -#line 2152 "Gmsh.yy.cpp" +#line 2146 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2159,7 +2153,6 @@ case YY_STATE_EOF(INITIAL): /* Undo the effects of YY_DO_BEFORE_ACTION. */ *yy_cp = yy_hold_char; - YY_RESTORE_YY_MORE_OFFSET if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW ) { @@ -2305,7 +2298,7 @@ static int yy_get_next_buffer() { /* Don't try to fill the buffer, so this is an EOF. */ if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 ) { - /* We matched a single character, the EOB, so + /* We matched a singled characater, the EOB, so * treat this as a final EOF. */ return EOB_ACT_END_OF_FILE; @@ -2332,7 +2325,7 @@ static int yy_get_next_buffer() /* don't do the read, it's not guaranteed to return an EOF, * just force an EOF */ - yy_current_buffer->yy_n_chars = yy_n_chars = 0; + yy_n_chars = 0; else { @@ -2387,8 +2380,6 @@ static int yy_get_next_buffer() /* Read in more data. */ YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]), yy_n_chars, num_to_read ); - - yy_current_buffer->yy_n_chars = yy_n_chars; } if ( yy_n_chars == 0 ) @@ -2513,8 +2504,7 @@ register char *yy_bp; yy_cp += (int) (dest - source); yy_bp += (int) (dest - source); - yy_current_buffer->yy_n_chars = - yy_n_chars = yy_current_buffer->yy_buf_size; + yy_n_chars = yy_current_buffer->yy_buf_size; if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 ) YY_FATAL_ERROR( "flex scanner push-back overflow" ); @@ -2552,31 +2542,19 @@ static int input() else { /* need more input */ - int offset = yy_c_buf_p - yytext_ptr; + yytext_ptr = yy_c_buf_p; ++yy_c_buf_p; switch ( yy_get_next_buffer() ) { - case EOB_ACT_LAST_MATCH: - /* This happens because yy_g_n_b() - * sees that we've accumulated a - * token and flags that we need to - * try matching the token before - * proceeding. But for input(), - * there's no matching to consider. - * So convert the EOB_ACT_LAST_MATCH - * to EOB_ACT_END_OF_FILE. - */ - - /* Reset buffer status. */ - yyrestart( yyin ); - - /* fall through */ - case EOB_ACT_END_OF_FILE: { if ( yywrap() ) + { + yy_c_buf_p = + yytext_ptr + YY_MORE_ADJ; return EOF; + } if ( ! yy_did_buffer_switch_on_eof ) YY_NEW_FILE; @@ -2588,8 +2566,17 @@ static int input() } case EOB_ACT_CONTINUE_SCAN: - yy_c_buf_p = yytext_ptr + offset; + yy_c_buf_p = yytext_ptr + YY_MORE_ADJ; break; + + case EOB_ACT_LAST_MATCH: +#ifdef __cplusplus + YY_FATAL_ERROR( + "unexpected last match in yyinput()" ); +#else + YY_FATAL_ERROR( + "unexpected last match in input()" ); +#endif } } } @@ -2753,9 +2740,6 @@ YY_BUFFER_STATE b; #endif { - if ( ! b ) - return; - b->yy_n_chars = 0; /* We always need two end-of-buffer characters. The first causes @@ -2815,17 +2799,17 @@ yy_size_t size; #ifndef YY_NO_SCAN_STRING #ifdef YY_USE_PROTOS -YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str ) +YY_BUFFER_STATE yy_scan_string( yyconst char *str ) #else -YY_BUFFER_STATE yy_scan_string( yy_str ) -yyconst char *yy_str; +YY_BUFFER_STATE yy_scan_string( str ) +yyconst char *str; #endif { int len; - for ( len = 0; yy_str[len]; ++len ) + for ( len = 0; str[len]; ++len ) ; - return yy_scan_bytes( yy_str, len ); + return yy_scan_bytes( str, len ); } #endif @@ -2946,7 +2930,7 @@ char msg[]; { \ /* Undo effects of setting up yytext. */ \ yytext[yyleng] = yy_hold_char; \ - yy_c_buf_p = yytext + n; \ + yy_c_buf_p = yytext + n - YY_MORE_ADJ; \ yy_hold_char = *yy_c_buf_p; \ *yy_c_buf_p = '\0'; \ yyleng = n; \ @@ -2972,22 +2956,6 @@ int n; } #endif -#ifdef YY_NEED_STRLEN -#ifdef YY_USE_PROTOS -static int yy_flex_strlen( yyconst char *s ) -#else -static int yy_flex_strlen( s ) -yyconst char *s; -#endif - { - register int n; - for ( n = 0; s[n]; ++n ) - ; - - return n; - } -#endif - #ifdef YY_USE_PROTOS static void *yy_flex_alloc( yy_size_t size ) diff --git a/tutorial/t2.geo b/tutorial/t2.geo index 016e737193eaf4be4a38c3ba2d8960c1c0114cb9..2eb9d55624bcf0cb43f438d7bc5f73464b73cf60 100644 --- a/tutorial/t2.geo +++ b/tutorial/t2.geo @@ -83,3 +83,4 @@ Physical Volume (1) = {146,147} ; // Congratulations! You've created your first fully unstructured // tetrahedral 3D mesh! +Line(147) = {2,8};