1 | set(EXECUTABLE_OUTPUT_PATH ${FLTK_BINARY_DIR}/bin/examples) |
---|
2 | |
---|
3 | ####################################################################### |
---|
4 | # audio libs for test apps |
---|
5 | if(WIN32) |
---|
6 | set(AUDIOLIBS winmm) |
---|
7 | elseif(APPLE) |
---|
8 | set(AUDIOLIBS "-framework CoreAudio") |
---|
9 | elseif(HAVE_ALSA_ASOUNDLIB_H) |
---|
10 | set(AUDIOLIBS -lasound) |
---|
11 | endif(WIN32) |
---|
12 | |
---|
13 | ####################################################################### |
---|
14 | macro(CREATE_EXAMPLE NAME SOURCES LIBRARIES) |
---|
15 | set(srcs) |
---|
16 | set(flsrcs) |
---|
17 | foreach(src ${SOURCES}) |
---|
18 | if("${src}" MATCHES ".fl$") |
---|
19 | list(APPEND flsrcs ${src}) |
---|
20 | else() |
---|
21 | list(APPEND srcs ${src}) |
---|
22 | endif("${src}" MATCHES ".fl$") |
---|
23 | endforeach(src) |
---|
24 | |
---|
25 | if(flsrcs) |
---|
26 | fltk_wrap_ui(${NAME} ${flsrcs}) |
---|
27 | endif(flsrcs) |
---|
28 | |
---|
29 | add_executable(${NAME} WIN32 ${srcs} ${${NAME}_FLTK_UI_SRCS}) |
---|
30 | if(flsrcs) |
---|
31 | add_dependencies(${NAME} ${FLTK_FLUID_EXECUTABLE}) |
---|
32 | endif(flsrcs) |
---|
33 | target_link_libraries(${NAME} ${LIBRARIES}) |
---|
34 | |
---|
35 | # link in optional libraries |
---|
36 | if(FLTK_HAVE_CAIRO) |
---|
37 | target_link_libraries(${NAME} fltk_cairo) |
---|
38 | endif(FLTK_HAVE_CAIRO) |
---|
39 | |
---|
40 | if(USE_XFT) |
---|
41 | target_link_libraries(${NAME} ${X11_Xft_LIB}) |
---|
42 | endif(USE_XFT) |
---|
43 | |
---|
44 | if(HAVE_XINERAMA) |
---|
45 | target_link_libraries(${NAME} ${X11_Xinerama_LIB}) |
---|
46 | endif(HAVE_XINERAMA) |
---|
47 | |
---|
48 | install(TARGETS ${NAME} |
---|
49 | DESTINATION ${PREFIX_DOC}/examples |
---|
50 | ) |
---|
51 | endmacro(CREATE_EXAMPLE NAME SOURCES LIBRARIES) |
---|
52 | |
---|
53 | ####################################################################### |
---|
54 | include_directories( |
---|
55 | ${CMAKE_CURRENT_SOURCE_DIR} |
---|
56 | ${CMAKE_CURRENT_BINARY_DIR} |
---|
57 | ) |
---|
58 | |
---|
59 | ####################################################################### |
---|
60 | CREATE_EXAMPLE(adjuster adjuster.cxx fltk) |
---|
61 | CREATE_EXAMPLE(arc arc.cxx fltk) |
---|
62 | CREATE_EXAMPLE(ask ask.cxx fltk) |
---|
63 | CREATE_EXAMPLE(bitmap bitmap.cxx fltk) |
---|
64 | CREATE_EXAMPLE(blocks blocks.cxx "fltk;${AUDIOLIBS}") |
---|
65 | CREATE_EXAMPLE(boxtype boxtype.cxx fltk) |
---|
66 | CREATE_EXAMPLE(browser browser.cxx fltk) |
---|
67 | CREATE_EXAMPLE(button button.cxx fltk) |
---|
68 | CREATE_EXAMPLE(buttons buttons.cxx fltk) |
---|
69 | CREATE_EXAMPLE(checkers checkers.cxx fltk) |
---|
70 | CREATE_EXAMPLE(clock clock.cxx fltk) |
---|
71 | CREATE_EXAMPLE(colbrowser colbrowser.cxx "fltk;fltk_forms") |
---|
72 | CREATE_EXAMPLE(color_chooser color_chooser.cxx fltk) |
---|
73 | CREATE_EXAMPLE(cursor cursor.cxx fltk) |
---|
74 | CREATE_EXAMPLE(curve curve.cxx fltk) |
---|
75 | CREATE_EXAMPLE(demo demo.cxx "fltk;fltk_forms") |
---|
76 | CREATE_EXAMPLE(device device.cxx fltk) |
---|
77 | CREATE_EXAMPLE(doublebuffer doublebuffer.cxx fltk) |
---|
78 | CREATE_EXAMPLE(editor editor.cxx fltk) |
---|
79 | CREATE_EXAMPLE(fast_slow fast_slow.fl fltk) |
---|
80 | CREATE_EXAMPLE(file_chooser file_chooser.cxx "fltk;fltk_images") |
---|
81 | CREATE_EXAMPLE(fonts fonts.cxx fltk) |
---|
82 | CREATE_EXAMPLE(forms forms.cxx "fltk;fltk_forms") |
---|
83 | CREATE_EXAMPLE(hello hello.cxx fltk) |
---|
84 | CREATE_EXAMPLE(help help.cxx "fltk;fltk_images") |
---|
85 | CREATE_EXAMPLE(iconize iconize.cxx fltk) |
---|
86 | CREATE_EXAMPLE(image image.cxx fltk) |
---|
87 | CREATE_EXAMPLE(inactive inactive.fl fltk) |
---|
88 | CREATE_EXAMPLE(input input.cxx fltk) |
---|
89 | CREATE_EXAMPLE(input_choice input_choice.cxx fltk) |
---|
90 | CREATE_EXAMPLE(keyboard "keyboard.cxx;keyboard_ui.fl" fltk) |
---|
91 | CREATE_EXAMPLE(label label.cxx "fltk;fltk_forms") |
---|
92 | CREATE_EXAMPLE(line_style line_style.cxx fltk) |
---|
93 | CREATE_EXAMPLE(list_visuals list_visuals.cxx fltk) |
---|
94 | CREATE_EXAMPLE(mandelbrot "mandelbrot_ui.fl;mandelbrot.cxx" fltk) |
---|
95 | CREATE_EXAMPLE(menubar menubar.cxx fltk) |
---|
96 | CREATE_EXAMPLE(message message.cxx fltk) |
---|
97 | CREATE_EXAMPLE(minimum minimum.cxx fltk) |
---|
98 | CREATE_EXAMPLE(native-filechooser native-filechooser.cxx "fltk;fltk_images") |
---|
99 | CREATE_EXAMPLE(navigation navigation.cxx fltk) |
---|
100 | CREATE_EXAMPLE(output output.cxx "fltk;fltk_forms") |
---|
101 | CREATE_EXAMPLE(overlay overlay.cxx fltk) |
---|
102 | CREATE_EXAMPLE(pack pack.cxx fltk) |
---|
103 | CREATE_EXAMPLE(pixmap pixmap.cxx fltk) |
---|
104 | CREATE_EXAMPLE(pixmap_browser pixmap_browser.cxx "fltk;fltk_images") |
---|
105 | CREATE_EXAMPLE(preferences preferences.fl fltk) |
---|
106 | CREATE_EXAMPLE(radio radio.fl fltk) |
---|
107 | CREATE_EXAMPLE(resize resize.fl fltk) |
---|
108 | CREATE_EXAMPLE(resizebox resizebox.cxx fltk) |
---|
109 | CREATE_EXAMPLE(rotated_text rotated_text.cxx fltk) |
---|
110 | CREATE_EXAMPLE(scroll scroll.cxx fltk) |
---|
111 | CREATE_EXAMPLE(subwindow subwindow.cxx fltk) |
---|
112 | CREATE_EXAMPLE(sudoku sudoku.cxx "fltk;fltk_images;${AUDIOLIBS}") |
---|
113 | CREATE_EXAMPLE(symbols symbols.cxx fltk) |
---|
114 | CREATE_EXAMPLE(tabs tabs.fl fltk) |
---|
115 | CREATE_EXAMPLE(table table.cxx fltk) |
---|
116 | CREATE_EXAMPLE(threads threads.cxx fltk) |
---|
117 | CREATE_EXAMPLE(tile tile.cxx fltk) |
---|
118 | CREATE_EXAMPLE(tiled_image tiled_image.cxx fltk) |
---|
119 | CREATE_EXAMPLE(tree tree.fl fltk) |
---|
120 | CREATE_EXAMPLE(utf8 utf8.cxx fltk) |
---|
121 | CREATE_EXAMPLE(valuators valuators.fl fltk) |
---|
122 | CREATE_EXAMPLE(unittests unittests.cxx fltk) |
---|
123 | |
---|
124 | # OpenGL demos... |
---|
125 | if(OPENGL_FOUND) |
---|
126 | CREATE_EXAMPLE(CubeView "CubeMain.cxx;CubeView.cxx;CubeViewUI.fl" "fltk;fltk_gl") |
---|
127 | CREATE_EXAMPLE(cube cube.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}") |
---|
128 | CREATE_EXAMPLE(fractals "fractals.cxx;fracviewer.cxx" "fltk;fltk_gl") |
---|
129 | CREATE_EXAMPLE(fullscreen fullscreen.cxx "fltk;fltk_gl") |
---|
130 | CREATE_EXAMPLE(glpuzzle glpuzzle.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}") |
---|
131 | CREATE_EXAMPLE(gl_overlay gl_overlay.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}") |
---|
132 | CREATE_EXAMPLE(shape shape.cxx "fltk;fltk_gl;${OPENGL_LIBRARIES}") |
---|
133 | endif(OPENGL_FOUND) |
---|
134 | |
---|
135 | # Cairo demo |
---|
136 | if(FLTK_HAVE_CAIRO) |
---|
137 | CREATE_EXAMPLE(cairo_test cairo_test.cxx fltk) |
---|
138 | endif(FLTK_HAVE_CAIRO) |
---|