From 4dd8dd654fbe58ba4d155baee5421ad89ce8869a Mon Sep 17 00:00:00 2001 From: Michael R Sweet Date: Sun, 21 Nov 2004 14:32:22 +0000 Subject: [PATCH] Fl_Sys_Menu_Bar didn't compile on case-sensitive file-systems (STR #622) More Watcom changes (STR #623) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3908 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- CHANGES | 5 ++++- fluid/makefile.wat | 13 ++++++------ src/Fl_Sys_Menu_Bar.cxx | 6 +++--- watcom.mif | 46 +++++++++++++++++++---------------------- watcom/makefile | 11 ++++++++++ 5 files changed, 46 insertions(+), 35 deletions(-) diff --git a/CHANGES b/CHANGES index 4ea5e5910..099423078 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,8 @@ CHANGES IN FLTK 1.1.6 - Documentation updates (STR #608) + - Fl_Sys_Menu_Bar didn't compile on case-sensitive + file-systems (STR #622) - FLUID didn't handle default function parameters properly (STR #579) - Moving or resizing widgets in FLUID didn't always @@ -14,7 +16,8 @@ CHANGES IN FLTK 1.1.6 - Fixed the scandir() conditional code for HP-UX 11i (STR #585) - Fl_Text_Display didn't support CTRL/CMD-A/C (STR #601) - - Watcom fixes (STR #581, STR #584, STR #594, STR #595) + - Watcom fixes (STR #581, STR #584, STR #594, STR #595, + STR #623) - Fixed library include order when building DSOs on MacOS X (STR #596) - fl_xid() could cause a WIN32 application to crash (STR diff --git a/fluid/makefile.wat b/fluid/makefile.wat index 01a5abbcc..f6aea8963 100644 --- a/fluid/makefile.wat +++ b/fluid/makefile.wat @@ -1,5 +1,5 @@ # -# "$Id: makefile.wat,v 1.1.2.1 2004/11/20 03:19:58 easysw Exp $" +# "$Id: makefile.wat,v 1.1.2.2 2004/11/21 14:32:21 easysw Exp $" # # FLUID makefile for the Fast Light Tool Kit (FLTK). # @@ -23,7 +23,7 @@ # Please report all bugs and problems to "fltk-bugs@fltk.org". # -CPPFILES = & +OBJECTS = & Fl_Function_Type.obj & Fl_Menu_Type.obj & Fl_Group_Type.obj & @@ -34,17 +34,18 @@ CPPFILES = & code.obj & factory.obj & file.obj & - fluid.obj & align_widget.obj & about_panel.obj & widget_panel.obj & alignment_panel.obj & function_panel.obj +# fluid.obj should not be in the list, because the watcom.mif file +# assumes an object file with the same name as the target executable + ################################################################ -OBJECTS = $(CPPFILES) -EXTRA_LIBS = uuid.lib +EXTRA_LIBS = wsock32 !include ../watcom.mif @@ -73,5 +74,5 @@ rebuild: ./fluid -c widget_panel.fl # -# End of "$Id: makefile.wat,v 1.1.2.1 2004/11/20 03:19:58 easysw Exp $". +# End of "$Id: makefile.wat,v 1.1.2.2 2004/11/21 14:32:21 easysw Exp $". # diff --git a/src/Fl_Sys_Menu_Bar.cxx b/src/Fl_Sys_Menu_Bar.cxx index 5b1bf73b0..734ebb98e 100644 --- a/src/Fl_Sys_Menu_Bar.cxx +++ b/src/Fl_Sys_Menu_Bar.cxx @@ -1,5 +1,5 @@ // -// "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.9 2004/04/11 04:38:58 easysw Exp $" +// "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.10 2004/11/21 14:32:22 easysw Exp $" // // MacOS system menu bar widget for the Fast Light Tool Kit (FLTK). // @@ -50,7 +50,7 @@ #if defined(__APPLE__) -#include +#include #include #include @@ -320,5 +320,5 @@ int Fl_Menu_Bar::handle(int event) { #endif /* __APPLE__ */ // -// End of "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.9 2004/04/11 04:38:58 easysw Exp $". +// End of "$Id: Fl_Sys_Menu_Bar.cxx,v 1.1.2.10 2004/11/21 14:32:22 easysw Exp $". // diff --git a/watcom.mif b/watcom.mif index f4deaf01a..3ba3fa6af 100644 --- a/watcom.mif +++ b/watcom.mif @@ -77,10 +77,19 @@ TARGET=linux ! endif !endif -!ifeq TARGET os2 -WATCOMTARGET=os2v2 +# +# Now we know the target. Determine the link target. For fltk, this +# is always GUI for Windows and OS/2. For possible link targets (aliases +# for a set of linker directives) see wlsystem.lnk in Watcom's BINW directory. +# +!ifeq TARGET dos +LINKTARGET=dos32a +!else ifeq TARGET os2 +LINKTARGET=os2v2_pm +!else ifeq TARGET nt +LINKTARGET=nt_win !else -WATCOMTARGET=$(TARGET) +LINKTARGET=linux !endif # @@ -119,7 +128,7 @@ LIBNAMEIMG = $(LIBDIR)$(LIBNAMEROOT)_img_$(D)$(O).lib LIBS = $(LIBNAME) $(LIBNAMEFL) $(LIBNAMEGL) $(LIBNAMEIMG) !endif -# Set target environment options +# Set target environment options for the project !ifeqi TARGET nt # WINDOWS 32 bit SYSDEF= -DWIN32 @@ -129,7 +138,7 @@ EXEEXT=.exe !else ifeqi TARGET linux # Linux Intel 32 bit generic SYSDEF= ASYSDEF= -EXEEXT= +EXEEXT=.exe # We need some exe extension else the build won't work !else ifeqi TARGET os2 # OS/2 32 bit SYSDEF= @@ -173,9 +182,9 @@ EXEEXT=.exe @set INCLUDE=$(%WATCOM)\LH;$(EXTRA_INCLUDE_DIRS) !endif - @set LIB=$(LIBPATH) +# @set LIB=$(LIBPATH) # @echo Top dir: $(PROJ) -# @echo Include dirs: $(%INCLUDE) + @echo Include dirs: $(%INCLUDE) # @echo Lib dirs: $(LIBDIRS) # @echo Libname=$(LIBNAME) # @echo extra libs: $(LIBS) @@ -189,7 +198,7 @@ EXEEXT=.exe !ifeqi D d WCADEBUG=-d1 # debug opts for wasm WCCDEBUG=-d2 -s -ors # debug opts for wcc. NOTE: -we is to make errors of all warnings -WCLDEBUG=d d all # debug opts for wlink +WCLDEBUG=d all # debug opts for wlink # WCCTIMING=-et # if added to CC command line will generate timing file after execution !else # @@ -218,27 +227,14 @@ WCCDEBUG= -ors -s # release opts for wcc !loaddll wlink wlink !loaddll wlib wlibd -!ifeqi O D -LIBPATH=$(%WATCOM)\lib386;$(%WATCOM)\lib386\dos; -SYSLIBS= -!else ifeqi O O -LIBPATH=$(%WATCOM)\lib386;$(%WATCOM)\lib386\os2 -SYSLIBS= -!else ifeqi O W -LIBPATH=$(%WATCOM)\lib386;$(%WATCOM)\lib386\nt -SYSLIBS=netapi32.lib wsock32.lib mpr.lib glu32.lib opengl32.lib -!else ifeqi O L -LIBPATH=$(%WATCOM)\lib386;$(%WATCOM)\lib386\linux -SYSLIBS= -!endif CCOPTS0=-6r -zq CCOPTS1=$(WCCDEBUG) -bt=$(TARGET) -fp6 -fpi87 # 1st part of Watcom opts -CCOPTS2=-mf -wce=130 -wx -zm -zq # -j # 2nd part of Watcom opts -CCOPTS3=-fo$(ODIR)\$^&.obj # 3rd part Watcom opts +CCOPTS2=-mf -wce=130 -wx -zq # -j # 2nd part of Watcom opts +CCOPTS3=-fo$(ODIR)\$^&.obj # 3rd part Watcom opts COPTS=-zm -CPPOPTS=-zm -zv -fx +CPPOPTS=-zmf -zv -fx -LNOPTS=sys $(WATCOMTARGET) $(WCLDEBUG) op symf,q,m,el,vfr op st=32k ru native libpath $(LIBPATH) # linker options +LNOPTS=sys $(LINKTARGET) $(WCLDEBUG) op symf,q,m,el,vfr op st=32k # linker options LIBOPTS= -b -q -p=512 -c # librarian options LN=wlink # Watcom linker AS=wasm # Watcom assembler diff --git a/watcom/makefile b/watcom/makefile index 69ed2c026..75dd9e45a 100644 --- a/watcom/makefile +++ b/watcom/makefile @@ -75,6 +75,17 @@ RO : .SYMBOLIC @set OPTIONS=D=r O=o ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT) %make BuildOne +# +# Linux Debug and Release targets. Environment variable XLIB must point to a directory +# which has a subdirectory X11 with X include files. Builds only jpeg, zlib and png libs for now. +# +DL : .SYMBOLIC + @set OPTIONS=D=d O=l ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT);$(%XLIB) + %make BuildOne + +RL : .SYMBOLIC + @set OPTIONS=D=r O=l ROOT=$(ROOT) PROJ=$(PROJ) EXTRA_INCLUDE_DIRS=$(ROOT);$(%XLIB) + %make BuildOne # Internal target to build the individual modules. The following macros must # have been set: D (value D or R), O (D,O,W,L)