From 69d58f485a1ea6d5182329bfccda7c2138e11d7c Mon Sep 17 00:00:00 2001
From: Albrecht Schlosser <albrechts.fltk@online.de>
Date: Sun, 21 Jun 2020 13:38:42 +0200
Subject: [PATCH] Remove superfluous dependency on forms library

Some of the test programs were linked with libfltk_forms which was
unnecessary. The only one requiring this is the forms demo.

[CMake] reordered linked FLTK libs in dependency order.
---
 test/CMakeLists.txt | 36 ++++++++++++++++++------------------
 test/Makefile       |  8 ++++----
 2 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 951195063..886d18813 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -52,9 +52,9 @@ CREATE_EXAMPLE(boxtype boxtype.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(browser browser.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(button button.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(buttons buttons.cxx fltk ANDROID_OK)
-CREATE_EXAMPLE(checkers "checkers.cxx;checkers_pieces.fl" "fltk;fltk_images" ANDROID_OK)
+CREATE_EXAMPLE(checkers "checkers.cxx;checkers_pieces.fl" "fltk_images;fltk" ANDROID_OK)
 CREATE_EXAMPLE(clock clock.cxx fltk ANDROID_OK)
-CREATE_EXAMPLE(colbrowser colbrowser.cxx "fltk;fltk_forms")
+CREATE_EXAMPLE(colbrowser colbrowser.cxx fltk)
 CREATE_EXAMPLE(color_chooser color_chooser.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(cursor cursor.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(curve curve.cxx fltk ANDROID_OK)
@@ -63,11 +63,11 @@ CREATE_EXAMPLE(device device.cxx fltk)
 CREATE_EXAMPLE(doublebuffer doublebuffer.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(editor editor.cxx fltk ANDROID_OK)
 CREATE_EXAMPLE(fast_slow fast_slow.fl fltk ANDROID_OK)
-CREATE_EXAMPLE(file_chooser file_chooser.cxx "fltk;fltk_images")
+CREATE_EXAMPLE(file_chooser file_chooser.cxx "fltk_images;fltk")
 CREATE_EXAMPLE(fonts fonts.cxx fltk)
-CREATE_EXAMPLE(forms forms.cxx "fltk;fltk_forms")
+CREATE_EXAMPLE(forms forms.cxx "fltk_forms;fltk")
 CREATE_EXAMPLE(hello hello.cxx fltk)
-CREATE_EXAMPLE(help_dialog help_dialog.cxx "fltk;fltk_images")
+CREATE_EXAMPLE(help_dialog help_dialog.cxx "fltk_images;fltk")
 CREATE_EXAMPLE(icon icon.cxx fltk)
 CREATE_EXAMPLE(iconize iconize.cxx fltk)
 CREATE_EXAMPLE(image image.cxx fltk)
@@ -75,20 +75,20 @@ CREATE_EXAMPLE(inactive inactive.fl fltk)
 CREATE_EXAMPLE(input input.cxx fltk)
 CREATE_EXAMPLE(input_choice input_choice.cxx fltk)
 CREATE_EXAMPLE(keyboard "keyboard.cxx;keyboard_ui.fl" fltk)
-CREATE_EXAMPLE(label label.cxx "fltk;fltk_forms")
+CREATE_EXAMPLE(label label.cxx fltk)
 CREATE_EXAMPLE(line_style line_style.cxx fltk)
 CREATE_EXAMPLE(list_visuals list_visuals.cxx fltk)
 CREATE_EXAMPLE(mandelbrot "mandelbrot_ui.fl;mandelbrot.cxx" fltk)
 CREATE_EXAMPLE(menubar menubar.cxx fltk)
 CREATE_EXAMPLE(message message.cxx fltk)
 CREATE_EXAMPLE(minimum minimum.cxx fltk)
-CREATE_EXAMPLE(native-filechooser native-filechooser.cxx "fltk;fltk_images")
+CREATE_EXAMPLE(native-filechooser native-filechooser.cxx "fltk_images;fltk")
 CREATE_EXAMPLE(navigation navigation.cxx fltk)
-CREATE_EXAMPLE(output output.cxx "fltk;fltk_forms")
+CREATE_EXAMPLE(output output.cxx fltk)
 CREATE_EXAMPLE(overlay overlay.cxx fltk)
 CREATE_EXAMPLE(pack pack.cxx fltk)
 CREATE_EXAMPLE(pixmap pixmap.cxx fltk)
-CREATE_EXAMPLE(pixmap_browser pixmap_browser.cxx "fltk;fltk_images")
+CREATE_EXAMPLE(pixmap_browser pixmap_browser.cxx "fltk_images;fltk")
 CREATE_EXAMPLE(preferences preferences.fl fltk)
 CREATE_EXAMPLE(offscreen offscreen.cxx fltk)
 CREATE_EXAMPLE(radio radio.fl fltk)
@@ -97,7 +97,7 @@ CREATE_EXAMPLE(resizebox resizebox.cxx fltk)
 CREATE_EXAMPLE(rotated_text rotated_text.cxx fltk)
 CREATE_EXAMPLE(scroll scroll.cxx fltk)
 CREATE_EXAMPLE(subwindow subwindow.cxx fltk)
-CREATE_EXAMPLE(sudoku sudoku.cxx "fltk;fltk_images;${AUDIOLIBS}")
+CREATE_EXAMPLE(sudoku sudoku.cxx "fltk_images;fltk;${AUDIOLIBS}")
 CREATE_EXAMPLE(symbols symbols.cxx fltk)
 CREATE_EXAMPLE(tabs tabs.fl fltk)
 CREATE_EXAMPLE(table table.cxx fltk)
@@ -114,18 +114,18 @@ CREATE_EXAMPLE(fltk-versions ../examples/fltk-versions.cxx fltk)
 
 # OpenGL demos...
 if(OPENGL_FOUND)
-CREATE_EXAMPLE(CubeView "CubeMain.cxx;CubeView.cxx;CubeViewUI.fl" "fltk;fltk_gl")
-CREATE_EXAMPLE(cube cube.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}")
-CREATE_EXAMPLE(fractals "fractals.cxx;fracviewer.cxx" "fltk;fltk_gl")
-CREATE_EXAMPLE(fullscreen fullscreen.cxx "fltk;fltk_gl")
-CREATE_EXAMPLE(glpuzzle glpuzzle.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}")
-CREATE_EXAMPLE(gl_overlay gl_overlay.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}")
-CREATE_EXAMPLE(shape shape.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}")
+CREATE_EXAMPLE(CubeView "CubeMain.cxx;CubeView.cxx;CubeViewUI.fl" "fltk_gl;fltk")
+CREATE_EXAMPLE(cube cube.cxx "fltk_gl;fltk;${OPENGL_LIBRARIES}")
+CREATE_EXAMPLE(fractals "fractals.cxx;fracviewer.cxx" "fltk_gl;fltk")
+CREATE_EXAMPLE(fullscreen fullscreen.cxx "fltk_gl;fltk")
+CREATE_EXAMPLE(glpuzzle glpuzzle.cxx "fltk_gl;fltk;${OPENGL_LIBRARIES}")
+CREATE_EXAMPLE(gl_overlay gl_overlay.cxx "fltk_gl;fltk;${OPENGL_LIBRARIES}")
+CREATE_EXAMPLE(shape shape.cxx "fltk_gl;fltk;${OPENGL_LIBRARIES}")
 endif(OPENGL_FOUND)
 
 # Cairo demo - must also be built w/o Cairo (displays a message box)
 if (FLTK_HAVE_CAIRO)
-  CREATE_EXAMPLE(cairo_test cairo_test.cxx "fltk;fltk_cairo")
+  CREATE_EXAMPLE(cairo_test cairo_test.cxx "fltk_cairo;fltk")
 else ()
   CREATE_EXAMPLE(cairo_test cairo_test.cxx fltk)
 endif (FLTK_HAVE_CAIRO)
diff --git a/test/Makefile b/test/Makefile
index 07c0bd3a3..66a25825c 100644
--- a/test/Makefile
+++ b/test/Makefile
@@ -352,7 +352,7 @@ clock$(EXEEXT): clock.o
 
 colbrowser$(EXEEXT): colbrowser.o
 	echo Linking $@...
-	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ colbrowser.o $(LINKFLTKFORMS) $(LDLIBS)
+	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ colbrowser.o $(LINKFLTK) $(LDLIBS)
 	$(OSX_ONLY) ../fltk-config --post $@
 	$(OSX_ONLY) mkdir -p colbrowser.app/Contents/Resources
 	$(OSX_ONLY) cp -f rgb.txt colbrowser.app/Contents/Resources/
@@ -365,7 +365,7 @@ curve$(EXEEXT): curve.o
 
 demo$(EXEEXT): demo.o
 	echo Linking $@...
-	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ demo.o $(LINKFLTKFORMS) $(LDLIBS)
+	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ demo.o $(LINKFLTK) $(LDLIBS)
 	$(OSX_ONLY) ../fltk-config --post $@
 	$(OSX_ONLY) mkdir -p demo.app/Contents/Resources
 	$(OSX_ONLY) cp -f demo.menu demo.app/Contents/Resources/
@@ -429,7 +429,7 @@ keyboard_ui.cxx:	keyboard_ui.fl ../fluid/fluid$(EXEEXT)
 
 label$(EXEEXT): label.o
 	echo Linking $@...
-	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ label.o $(LINKFLTKFORMS) $(LDLIBS)
+	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ label.o $(LINKFLTK) $(LDLIBS)
 	$(OSX_ONLY) ../fltk-config --post $@
 
 line_style$(EXEEXT): line_style.o
@@ -460,7 +460,7 @@ offscreen$(EXEEXT): offscreen.o
 
 output$(EXEEXT): output.o $(FLLIBNAME)
 	echo Linking $@...
-	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ output.o $(LINKFLTKFORMS) $(LDLIBS)
+	$(CXX) $(ARCHFLAGS) $(CXXFLAGS) $(LDFLAGS) -o $@ output.o $(LINKFLTK) $(LDLIBS)
 	$(OSX_ONLY) ../fltk-config --post $@
 
 overlay$(EXEEXT): overlay.o
-- 
GitLab