diff --git a/Tests/LibJS/CMakeLists.txt b/Tests/LibJS/CMakeLists.txt index 8d425f86505..7bd2772c9fe 100644 --- a/Tests/LibJS/CMakeLists.txt +++ b/Tests/LibJS/CMakeLists.txt @@ -1,2 +1,2 @@ serenity_testjs_test(test-js.cpp test-js) -install(TARGETS test-js RUNTIME DESTINATION bin) +install(TARGETS test-js RUNTIME DESTINATION bin OPTIONAL) diff --git a/Tests/LibWasm/CMakeLists.txt b/Tests/LibWasm/CMakeLists.txt index 0f16647d2ef..f3b3f86666f 100644 --- a/Tests/LibWasm/CMakeLists.txt +++ b/Tests/LibWasm/CMakeLists.txt @@ -1,2 +1,2 @@ serenity_testjs_test(test-wasm.cpp test-wasm LIBS LibWasm) -install(TARGETS test-wasm RUNTIME DESTINATION bin) +install(TARGETS test-wasm RUNTIME DESTINATION bin OPTIONAL) diff --git a/Tests/LibWeb/CMakeLists.txt b/Tests/LibWeb/CMakeLists.txt index 4ddba42a055..87eabd8e168 100644 --- a/Tests/LibWeb/CMakeLists.txt +++ b/Tests/LibWeb/CMakeLists.txt @@ -1,2 +1,2 @@ serenity_testjs_test(test-web.cpp test-web LIBS LibWeb) -install(TARGETS test-web RUNTIME DESTINATION bin) +install(TARGETS test-web RUNTIME DESTINATION bin OPTIONAL) diff --git a/Userland/Applets/Audio/CMakeLists.txt b/Userland/Applets/Audio/CMakeLists.txt index fb83e95fd2c..17375eff622 100644 --- a/Userland/Applets/Audio/CMakeLists.txt +++ b/Userland/Applets/Audio/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Audio.Applet + REQUIRED + TARGETS Audio.Applet +) + set(SOURCES main.cpp ) diff --git a/Userland/Applets/ClipboardHistory/CMakeLists.txt b/Userland/Applets/ClipboardHistory/CMakeLists.txt index 23948bf1780..565d003c3cb 100644 --- a/Userland/Applets/ClipboardHistory/CMakeLists.txt +++ b/Userland/Applets/ClipboardHistory/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + ClipboardHistory.Applet + REQUIRED + TARGETS ClipboardHistory.Applet +) + set(SOURCES ClipboardHistoryModel.cpp main.cpp diff --git a/Userland/Applets/Network/CMakeLists.txt b/Userland/Applets/Network/CMakeLists.txt index 35a825317d9..e0471f05a8e 100644 --- a/Userland/Applets/Network/CMakeLists.txt +++ b/Userland/Applets/Network/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Network.Applet + REQUIRED + TARGETS Network.Applet +) + set(SOURCES main.cpp ) diff --git a/Userland/Applets/ResourceGraph/CMakeLists.txt b/Userland/Applets/ResourceGraph/CMakeLists.txt index e13d6c85600..6b77f6c4390 100644 --- a/Userland/Applets/ResourceGraph/CMakeLists.txt +++ b/Userland/Applets/ResourceGraph/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + ResourceGraph.Applet + REQUIRED + TARGETS ResourceGraph.Applet +) + set(SOURCES main.cpp ) diff --git a/Userland/Applications/3DFileViewer/CMakeLists.txt b/Userland/Applications/3DFileViewer/CMakeLists.txt index a5aca6e9c1d..88abb914d65 100644 --- a/Userland/Applications/3DFileViewer/CMakeLists.txt +++ b/Userland/Applications/3DFileViewer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + 3DFileViewer + RECOMMENDED + TARGETS 3DFileViewer +) + set(SOURCES Mesh.cpp WavefrontOBJLoader.cpp diff --git a/Userland/Applications/About/CMakeLists.txt b/Userland/Applications/About/CMakeLists.txt index 0b3023c8191..eac81f96d1d 100644 --- a/Userland/Applications/About/CMakeLists.txt +++ b/Userland/Applications/About/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + About + REQUIRED + TARGETS About +) + set(SOURCES main.cpp ) diff --git a/Userland/Applications/AnalogClock/CMakeLists.txt b/Userland/Applications/AnalogClock/CMakeLists.txt index 1597a974848..a3ab6b2abe3 100644 --- a/Userland/Applications/AnalogClock/CMakeLists.txt +++ b/Userland/Applications/AnalogClock/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + AnalogClock + RECOMMENDED + TARGETS AnalogClock +) + set(SOURCES main.cpp AnalogClock.cpp diff --git a/Userland/Applications/Browser/CMakeLists.txt b/Userland/Applications/Browser/CMakeLists.txt index 9622e719b07..e37ceeb885c 100644 --- a/Userland/Applications/Browser/CMakeLists.txt +++ b/Userland/Applications/Browser/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + Browser + RECOMMENDED + TARGETS Browser + DEPENDS ImageDecoder RequestServer WebContent WebSocket +) + compile_gml(BrowserWindow.gml BrowserWindowGML.h browser_window_gml) compile_gml(EditBookmark.gml EditBookmarkGML.h edit_bookmark_gml) compile_gml(Tab.gml TabGML.h tab_gml) diff --git a/Userland/Applications/Calculator/CMakeLists.txt b/Userland/Applications/Calculator/CMakeLists.txt index d72624c3088..966e1639105 100644 --- a/Userland/Applications/Calculator/CMakeLists.txt +++ b/Userland/Applications/Calculator/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Calculator + RECOMMENDED + TARGETS Calculator +) + compile_gml(CalculatorWindow.gml CalculatorGML.h calculator_gml) set(SOURCES main.cpp diff --git a/Userland/Applications/Calendar/CMakeLists.txt b/Userland/Applications/Calendar/CMakeLists.txt index fc0628fec44..256383fa55d 100644 --- a/Userland/Applications/Calendar/CMakeLists.txt +++ b/Userland/Applications/Calendar/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Calendar + TARGETS Calendar +) + compile_gml(CalendarWindow.gml CalendarWindowGML.h calendar_window_gml) set(SOURCES diff --git a/Userland/Applications/CrashReporter/CMakeLists.txt b/Userland/Applications/CrashReporter/CMakeLists.txt index d391aa6b846..e89bce6d9a0 100644 --- a/Userland/Applications/CrashReporter/CMakeLists.txt +++ b/Userland/Applications/CrashReporter/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + CrashReporter + REQUIRED + TARGETS CrashReporter +) + compile_gml(CrashReporterWindow.gml CrashReporterWindowGML.h crash_reporter_window_gml) diff --git a/Userland/Applications/Debugger/CMakeLists.txt b/Userland/Applications/Debugger/CMakeLists.txt index 7e6f200ea47..2548c51ebea 100644 --- a/Userland/Applications/Debugger/CMakeLists.txt +++ b/Userland/Applications/Debugger/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Debugger + TARGETS Debugger +) + set(SOURCES main.cpp ) diff --git a/Userland/Applications/DisplaySettings/CMakeLists.txt b/Userland/Applications/DisplaySettings/CMakeLists.txt index f794ebcce21..3dae443673f 100644 --- a/Userland/Applications/DisplaySettings/CMakeLists.txt +++ b/Userland/Applications/DisplaySettings/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + DisplaySettings + REQUIRED + TARGETS DisplaySettings +) + compile_gml(MonitorSettings.gml MonitorSettingsGML.h monitor_settings_window_gml) compile_gml(BackgroundSettings.gml BackgroundSettingsGML.h background_settings_gml) compile_gml(FontSettings.gml FontSettingsGML.h font_settings_gml) diff --git a/Userland/Applications/FileManager/CMakeLists.txt b/Userland/Applications/FileManager/CMakeLists.txt index 2ee5c116ba5..b31ef527a79 100644 --- a/Userland/Applications/FileManager/CMakeLists.txt +++ b/Userland/Applications/FileManager/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + FileManager + REQUIRED + TARGETS FileManager + DEPENDS FileOperation +) + compile_gml(FileManagerWindow.gml FileManagerWindowGML.h file_manager_window_gml) compile_gml(FileOperationProgress.gml FileOperationProgressGML.h file_operation_progress_gml) diff --git a/Userland/Applications/FontEditor/CMakeLists.txt b/Userland/Applications/FontEditor/CMakeLists.txt index 69f67b12aba..37422c4a81d 100644 --- a/Userland/Applications/FontEditor/CMakeLists.txt +++ b/Userland/Applications/FontEditor/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + FontEditor + RECOMMENDED + TARGETS FontEditor +) + include_directories(${CMAKE_CURRENT_BINARY_DIR}) compile_gml(FontEditorWindow.gml FontEditorWindowGML.h font_editor_window_gml) compile_gml(NewFontDialogPage1.gml NewFontDialogPage1GML.h new_font_dialog_page_1_gml) diff --git a/Userland/Applications/Help/CMakeLists.txt b/Userland/Applications/Help/CMakeLists.txt index 46a832c0444..c804dda3f81 100644 --- a/Userland/Applications/Help/CMakeLists.txt +++ b/Userland/Applications/Help/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Help + RECOMMENDED + TARGETS Help +) + set(SOURCES History.cpp main.cpp diff --git a/Userland/Applications/HexEditor/CMakeLists.txt b/Userland/Applications/HexEditor/CMakeLists.txt index cfc4cd3cfa7..18bad55a268 100644 --- a/Userland/Applications/HexEditor/CMakeLists.txt +++ b/Userland/Applications/HexEditor/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + HexEditor + RECOMMENDED + TARGETS HexEditor +) + compile_gml(HexEditorWindow.gml HexEditorWindowGML.h hex_editor_window_gml) compile_gml(GoToOffsetDialog.gml GoToOffsetDialogGML.h go_to_offset_dialog_gml) compile_gml(FindDialog.gml FindDialogGML.h find_dialog_gml) diff --git a/Userland/Applications/IRCClient/CMakeLists.txt b/Userland/Applications/IRCClient/CMakeLists.txt index 3926bbd5dc3..73dd4534aeb 100644 --- a/Userland/Applications/IRCClient/CMakeLists.txt +++ b/Userland/Applications/IRCClient/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + IRCClient + TARGETS IRCClient +) + set(SOURCES IRCAppWindow.cpp IRCChannel.cpp diff --git a/Userland/Applications/ImageViewer/CMakeLists.txt b/Userland/Applications/ImageViewer/CMakeLists.txt index d1ee14ff7a7..b4909f1ec50 100644 --- a/Userland/Applications/ImageViewer/CMakeLists.txt +++ b/Userland/Applications/ImageViewer/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + ImageViewer + RECOMMENDED + TARGETS ImageViewer + DEPENDS ImageDecoder +) + set(SOURCES main.cpp ViewWidget.cpp diff --git a/Userland/Applications/KeyboardMapper/CMakeLists.txt b/Userland/Applications/KeyboardMapper/CMakeLists.txt index af814c44b2f..79b69ef8150 100644 --- a/Userland/Applications/KeyboardMapper/CMakeLists.txt +++ b/Userland/Applications/KeyboardMapper/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + KeyboardMapper + RECOMMENDED + TARGETS KeyboardMapper +) + set(SOURCES KeyboardMapperWidget.cpp KeyButton.cpp diff --git a/Userland/Applications/KeyboardSettings/CMakeLists.txt b/Userland/Applications/KeyboardSettings/CMakeLists.txt index 62212cda369..d0a2448329a 100644 --- a/Userland/Applications/KeyboardSettings/CMakeLists.txt +++ b/Userland/Applications/KeyboardSettings/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + KeyboardSettings + REQUIRED + TARGETS KeyboardSettings +) + set(SOURCES main.cpp ) diff --git a/Userland/Applications/Magnifier/CMakeLists.txt b/Userland/Applications/Magnifier/CMakeLists.txt index 09799472689..0099d771d95 100644 --- a/Userland/Applications/Magnifier/CMakeLists.txt +++ b/Userland/Applications/Magnifier/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Magnifier + RECOMMENDED + TARGETS Magnifier +) + set(SOURCES MagnifierWidget.cpp MagnifierWidget.h diff --git a/Userland/Applications/MouseSettings/CMakeLists.txt b/Userland/Applications/MouseSettings/CMakeLists.txt index 297d2640545..398946ae383 100644 --- a/Userland/Applications/MouseSettings/CMakeLists.txt +++ b/Userland/Applications/MouseSettings/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + MouseSettings + REQUIRED + TARGETS MouseSettings +) + compile_gml(MouseSettingsWindow.gml MouseSettingsWindowGML.h mouse_settings_window_gml) set(SOURCES diff --git a/Userland/Applications/PDFViewer/CMakeLists.txt b/Userland/Applications/PDFViewer/CMakeLists.txt index 44bed3e5b22..57f89c52599 100644 --- a/Userland/Applications/PDFViewer/CMakeLists.txt +++ b/Userland/Applications/PDFViewer/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + PDFViewer + TARGETS PDFViewer +) + set(SOURCES NumericInput.cpp OutlineModel.cpp diff --git a/Userland/Applications/Piano/CMakeLists.txt b/Userland/Applications/Piano/CMakeLists.txt index 382e023c3be..83232f89fb0 100644 --- a/Userland/Applications/Piano/CMakeLists.txt +++ b/Userland/Applications/Piano/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + Piano + RECOMMENDED + TARGETS Piano + DEPENDS AudioServer +) + set(SOURCES Track.cpp TrackManager.cpp diff --git a/Userland/Applications/PixelPaint/CMakeLists.txt b/Userland/Applications/PixelPaint/CMakeLists.txt index d18d3c47bcf..5fba876951f 100644 --- a/Userland/Applications/PixelPaint/CMakeLists.txt +++ b/Userland/Applications/PixelPaint/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + PixelPaint + RECOMMENDED + TARGETS PixelPaint + DEPENDS ImageDecoder +) + compile_gml(PixelPaintWindow.gml PixelPaintWindowGML.h pixel_paint_window_gml) set(SOURCES diff --git a/Userland/Applications/Run/CMakeLists.txt b/Userland/Applications/Run/CMakeLists.txt index 4513f91890d..1a4f65d4f58 100644 --- a/Userland/Applications/Run/CMakeLists.txt +++ b/Userland/Applications/Run/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Run + REQUIRED + TARGETS Run +) + compile_gml(Run.gml RunGML.h run_gml) set(SOURCES diff --git a/Userland/Applications/SoundPlayer/CMakeLists.txt b/Userland/Applications/SoundPlayer/CMakeLists.txt index f0870bde575..9fe6266b346 100644 --- a/Userland/Applications/SoundPlayer/CMakeLists.txt +++ b/Userland/Applications/SoundPlayer/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + SoundPlayer + RECOMMENDED + TARGETS SoundPlayer + DEPENDS AudioServer +) + set(SOURCES main.cpp PlaybackManager.cpp diff --git a/Userland/Applications/SpaceAnalyzer/CMakeLists.txt b/Userland/Applications/SpaceAnalyzer/CMakeLists.txt index 2b1762aaa36..7b99dff2a89 100644 --- a/Userland/Applications/SpaceAnalyzer/CMakeLists.txt +++ b/Userland/Applications/SpaceAnalyzer/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + SpaceAnalyzer + TARGETS SpaceAnalyzer +) + compile_gml(SpaceAnalyzer.gml SpaceAnalyzerGML.h space_analyzer_gml) set(SOURCES diff --git a/Userland/Applications/Spreadsheet/CMakeLists.txt b/Userland/Applications/Spreadsheet/CMakeLists.txt index 50f0225d951..0f0eeec27d8 100644 --- a/Userland/Applications/Spreadsheet/CMakeLists.txt +++ b/Userland/Applications/Spreadsheet/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Spreadsheet + TARGETS Spreadsheet +) + compile_gml(CondFormatting.gml CondFormattingGML.h cond_fmt_gml) compile_gml(CondView.gml CondFormattingViewGML.h cond_fmt_view_gml) compile_gml(csv_import.gml CSVImportGML.h csv_import_gml) diff --git a/Userland/Applications/SystemMonitor/CMakeLists.txt b/Userland/Applications/SystemMonitor/CMakeLists.txt index f7db8a61ae1..12058c1fa7f 100644 --- a/Userland/Applications/SystemMonitor/CMakeLists.txt +++ b/Userland/Applications/SystemMonitor/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + SystemMonitor + REQUIRED + TARGETS SystemMonitor Profiler Inspector +) + set(SOURCES DevicesModel.cpp GraphWidget.cpp diff --git a/Userland/Applications/Terminal/CMakeLists.txt b/Userland/Applications/Terminal/CMakeLists.txt index 1fb969546e2..dc274cce984 100644 --- a/Userland/Applications/Terminal/CMakeLists.txt +++ b/Userland/Applications/Terminal/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Terminal + REQUIRED + TARGETS Terminal utmpupdate +) + compile_gml(TerminalSettingsWindow.gml TerminalSettingsWindowGML.h terminal_settings_window_gml) set(SOURCES diff --git a/Userland/Applications/TextEditor/CMakeLists.txt b/Userland/Applications/TextEditor/CMakeLists.txt index 25a0dd3fb80..b68b8b5b15a 100644 --- a/Userland/Applications/TextEditor/CMakeLists.txt +++ b/Userland/Applications/TextEditor/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + TextEditor + RECOMMENDED + TARGETS TextEditor + DEPENDS ImageDecoder RequestServer WebContent +) + compile_gml(TextEditorWindow.gml TextEditorWindowGML.h text_editor_window_gml) set(SOURCES diff --git a/Userland/Applications/ThemeEditor/CMakeLists.txt b/Userland/Applications/ThemeEditor/CMakeLists.txt index 94ca0e1f3ea..bb5a32087f3 100644 --- a/Userland/Applications/ThemeEditor/CMakeLists.txt +++ b/Userland/Applications/ThemeEditor/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + ThemeEditor + TARGETS ThemeEditor +) + set(SOURCES PreviewWidget.cpp main.cpp diff --git a/Userland/Applications/VideoPlayer/CMakeLists.txt b/Userland/Applications/VideoPlayer/CMakeLists.txt index f9f1a7422f3..c6f46a7babf 100644 --- a/Userland/Applications/VideoPlayer/CMakeLists.txt +++ b/Userland/Applications/VideoPlayer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + VideoPlayer + TARGETS VideoPlayer + DEPENDS AudioServer +) + set(SOURCES main.cpp ) diff --git a/Userland/Applications/Welcome/CMakeLists.txt b/Userland/Applications/Welcome/CMakeLists.txt index 8adb2729bf1..2b3b8e940ab 100644 --- a/Userland/Applications/Welcome/CMakeLists.txt +++ b/Userland/Applications/Welcome/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Welcome + TARGETS Welcome +) + compile_gml(WelcomeWindow.gml WelcomeWindowGML.h welcome_window_gml) set(SOURCES diff --git a/Userland/Demos/CatDog/CMakeLists.txt b/Userland/Demos/CatDog/CMakeLists.txt index ca3e8f6e929..5c873bde17b 100644 --- a/Userland/Demos/CatDog/CMakeLists.txt +++ b/Userland/Demos/CatDog/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + CatDog + RECOMMENDED + TARGETS CatDog +) + set(SOURCES CatDog.cpp SpeechBubble.cpp diff --git a/Userland/Demos/Cube/CMakeLists.txt b/Userland/Demos/Cube/CMakeLists.txt index ee06d91d3f7..24e81b25560 100644 --- a/Userland/Demos/Cube/CMakeLists.txt +++ b/Userland/Demos/Cube/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Cube + TARGETS Cube +) + set(SOURCES Cube.cpp ) diff --git a/Userland/Demos/Eyes/CMakeLists.txt b/Userland/Demos/Eyes/CMakeLists.txt index aa0e948d6a7..2431a7dcc6b 100644 --- a/Userland/Demos/Eyes/CMakeLists.txt +++ b/Userland/Demos/Eyes/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Eyes + TARGETS Eyes +) + set(SOURCES main.cpp EyesWidget.cpp diff --git a/Userland/Demos/Fire/CMakeLists.txt b/Userland/Demos/Fire/CMakeLists.txt index 10342de6008..31e7aaf90f1 100644 --- a/Userland/Demos/Fire/CMakeLists.txt +++ b/Userland/Demos/Fire/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Fire + TARGETS Fire +) + set(SOURCES Fire.cpp ) diff --git a/Userland/Demos/LibGfxDemo/CMakeLists.txt b/Userland/Demos/LibGfxDemo/CMakeLists.txt index 5f2d4bca8f4..38307046bac 100644 --- a/Userland/Demos/LibGfxDemo/CMakeLists.txt +++ b/Userland/Demos/LibGfxDemo/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + LibGfxDemo + TARGETS LibGfxDemo +) + set(SOURCES main.cpp ) diff --git a/Userland/Demos/LibGfxScaleDemo/CMakeLists.txt b/Userland/Demos/LibGfxScaleDemo/CMakeLists.txt index 38f441dab96..e65be4d3921 100644 --- a/Userland/Demos/LibGfxScaleDemo/CMakeLists.txt +++ b/Userland/Demos/LibGfxScaleDemo/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + LibGfxScaleDemo + TARGETS LibGfxScaleDemo +) + set(SOURCES main.cpp ) diff --git a/Userland/Demos/Mandelbrot/CMakeLists.txt b/Userland/Demos/Mandelbrot/CMakeLists.txt index 80a203d7159..ed177c0fb1a 100644 --- a/Userland/Demos/Mandelbrot/CMakeLists.txt +++ b/Userland/Demos/Mandelbrot/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Mandelbrot + TARGETS Mandelbrot +) + set(SOURCES Mandelbrot.cpp ) diff --git a/Userland/Demos/Mouse/CMakeLists.txt b/Userland/Demos/Mouse/CMakeLists.txt index bc90a5e3083..c5509e991ed 100644 --- a/Userland/Demos/Mouse/CMakeLists.txt +++ b/Userland/Demos/Mouse/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Mouse + TARGETS Mouse +) + set(SOURCES main.cpp ) diff --git a/Userland/Demos/Screensaver/CMakeLists.txt b/Userland/Demos/Screensaver/CMakeLists.txt index 6f8acee97ce..fa341ab42ee 100644 --- a/Userland/Demos/Screensaver/CMakeLists.txt +++ b/Userland/Demos/Screensaver/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Screensaver + TARGETS Screensaver +) + set(SOURCES Screensaver.cpp ) diff --git a/Userland/Demos/Starfield/CMakeLists.txt b/Userland/Demos/Starfield/CMakeLists.txt index a217dc92d70..7dc5b0ecaf8 100644 --- a/Userland/Demos/Starfield/CMakeLists.txt +++ b/Userland/Demos/Starfield/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + Starfield + TARGETS Starfield +) + set(SOURCES Starfield.cpp ) diff --git a/Userland/Demos/WidgetGallery/CMakeLists.txt b/Userland/Demos/WidgetGallery/CMakeLists.txt index 69179e26a25..8afdf670226 100644 --- a/Userland/Demos/WidgetGallery/CMakeLists.txt +++ b/Userland/Demos/WidgetGallery/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + WidgetGallery + TARGETS WidgetGallery +) + compile_gml(./GalleryGML/Window.gml WindowGML.h window_gml) compile_gml(./GalleryGML/BasicsTab.gml BasicsTabGML.h basics_tab_gml) compile_gml(./GalleryGML/SlidersTab.gml SlidersTabGML.h sliders_tab_gml) diff --git a/Userland/DevTools/HackStudio/CMakeLists.txt b/Userland/DevTools/HackStudio/CMakeLists.txt index 6b623e22813..06bd5b3c578 100644 --- a/Userland/DevTools/HackStudio/CMakeLists.txt +++ b/Userland/DevTools/HackStudio/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + HackStudio + RECOMMENDED + TARGETS HackStudio + DEPENDS CppLanguageServer ShellLanguageServer +) + add_subdirectory(LanguageServers) add_subdirectory(LanguageClients) diff --git a/Userland/DevTools/HackStudio/LanguageServers/Cpp/CMakeLists.txt b/Userland/DevTools/HackStudio/LanguageServers/Cpp/CMakeLists.txt index de5895e4143..998fb9b06a9 100644 --- a/Userland/DevTools/HackStudio/LanguageServers/Cpp/CMakeLists.txt +++ b/Userland/DevTools/HackStudio/LanguageServers/Cpp/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + CppLanguageServer + TARGETS CppLanguageServer +) + set(SOURCES CppComprehensionEngine.cpp Tests.cpp diff --git a/Userland/DevTools/HackStudio/LanguageServers/Shell/CMakeLists.txt b/Userland/DevTools/HackStudio/LanguageServers/Shell/CMakeLists.txt index 9924d8ebc75..59563e9a40d 100644 --- a/Userland/DevTools/HackStudio/LanguageServers/Shell/CMakeLists.txt +++ b/Userland/DevTools/HackStudio/LanguageServers/Shell/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + ShellLanguageServer + TARGETS ShellLanguageServer +) + set(SOURCES ShellComprehensionEngine.cpp main.cpp diff --git a/Userland/DevTools/Inspector/CMakeLists.txt b/Userland/DevTools/Inspector/CMakeLists.txt index e7735b5ea3e..edb60320647 100644 --- a/Userland/DevTools/Inspector/CMakeLists.txt +++ b/Userland/DevTools/Inspector/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Inspector + RECOMMENDED + TARGETS Inspector +) + set(SOURCES main.cpp RemoteObject.cpp diff --git a/Userland/DevTools/Playground/CMakeLists.txt b/Userland/DevTools/Playground/CMakeLists.txt index 4150e688abd..6fa9f90b699 100644 --- a/Userland/DevTools/Playground/CMakeLists.txt +++ b/Userland/DevTools/Playground/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Playground + RECOMMENDED + TARGETS Playground +) + set(SOURCES main.cpp GMLAutocompleteProvider.cpp diff --git a/Userland/DevTools/Profiler/CMakeLists.txt b/Userland/DevTools/Profiler/CMakeLists.txt index 7d60095c252..3b17cc360d4 100644 --- a/Userland/DevTools/Profiler/CMakeLists.txt +++ b/Userland/DevTools/Profiler/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Profiler + RECOMMENDED + TARGETS Profiler +) + set(SOURCES DisassemblyModel.cpp main.cpp diff --git a/Userland/DevTools/UserspaceEmulator/CMakeLists.txt b/Userland/DevTools/UserspaceEmulator/CMakeLists.txt index 23ada130563..e9410a36262 100644 --- a/Userland/DevTools/UserspaceEmulator/CMakeLists.txt +++ b/Userland/DevTools/UserspaceEmulator/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + UserspaceEmulator + RECOMMENDED + TARGETS UserspaceEmulator +) + set(SOURCES Emulator.cpp Emulator_syscalls.cpp diff --git a/Userland/Games/2048/CMakeLists.txt b/Userland/Games/2048/CMakeLists.txt index d48b1e7bcf4..d8f9bb2e7b1 100644 --- a/Userland/Games/2048/CMakeLists.txt +++ b/Userland/Games/2048/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + 2048 + RECOMMENDED + TARGETS 2048 +) + set(SOURCES BoardView.cpp Game.cpp diff --git a/Userland/Games/Breakout/CMakeLists.txt b/Userland/Games/Breakout/CMakeLists.txt index d26284ea20c..0cd3d1d1fd6 100644 --- a/Userland/Games/Breakout/CMakeLists.txt +++ b/Userland/Games/Breakout/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Breakout + RECOMMENDED + TARGETS Breakout +) + set(SOURCES main.cpp Game.cpp diff --git a/Userland/Games/Chess/CMakeLists.txt b/Userland/Games/Chess/CMakeLists.txt index 54415eeb95a..1c0c0a4784c 100644 --- a/Userland/Games/Chess/CMakeLists.txt +++ b/Userland/Games/Chess/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + Chess + RECOMMENDED + TARGETS Chess + DEPENDS ChessEngine +) + set(SOURCES main.cpp ChessWidget.cpp diff --git a/Userland/Games/GameOfLife/CMakeLists.txt b/Userland/Games/GameOfLife/CMakeLists.txt index 225e4f1b8a3..a8421a1e8bd 100644 --- a/Userland/Games/GameOfLife/CMakeLists.txt +++ b/Userland/Games/GameOfLife/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + GameOfLife + RECOMMENDED + TARGETS GameOfLife +) + compile_gml(GameOfLife.gml GameOfLifeGML.h game_of_life_gml) set(SOURCES diff --git a/Userland/Games/Hearts/CMakeLists.txt b/Userland/Games/Hearts/CMakeLists.txt index 312b5904b9c..2fa79e5ef39 100644 --- a/Userland/Games/Hearts/CMakeLists.txt +++ b/Userland/Games/Hearts/CMakeLists.txt @@ -1,3 +1,10 @@ +serenity_component( + Hearts + DESCRIPTION "Hearts game" + RECOMMENDED + TARGETS Hearts +) + compile_gml(Hearts.gml HeartsGML.h hearts_gml) set(SOURCES diff --git a/Userland/Games/Minesweeper/CMakeLists.txt b/Userland/Games/Minesweeper/CMakeLists.txt index 466227edb69..75bf5344b87 100644 --- a/Userland/Games/Minesweeper/CMakeLists.txt +++ b/Userland/Games/Minesweeper/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Minesweeper + RECOMMENDED + TARGETS Minesweeper +) + set(SOURCES Field.cpp main.cpp diff --git a/Userland/Games/Pong/CMakeLists.txt b/Userland/Games/Pong/CMakeLists.txt index ebd8962f946..20638e587cc 100644 --- a/Userland/Games/Pong/CMakeLists.txt +++ b/Userland/Games/Pong/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Pong + RECOMMENDED + TARGETS Pong +) + set(SOURCES main.cpp Game.cpp diff --git a/Userland/Games/Snake/CMakeLists.txt b/Userland/Games/Snake/CMakeLists.txt index d542cd4eadb..6ccc58755b1 100644 --- a/Userland/Games/Snake/CMakeLists.txt +++ b/Userland/Games/Snake/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Snake + RECOMMENDED + TARGETS Snake +) + set(SOURCES main.cpp SnakeGame.cpp diff --git a/Userland/Games/Solitaire/CMakeLists.txt b/Userland/Games/Solitaire/CMakeLists.txt index 084c776d24b..3727f7b80a9 100644 --- a/Userland/Games/Solitaire/CMakeLists.txt +++ b/Userland/Games/Solitaire/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Solitaire + RECOMMENDED + TARGETS Solitaire +) + compile_gml(Solitaire.gml SolitaireGML.h solitaire_gml) set(SOURCES diff --git a/Userland/Services/AudioServer/CMakeLists.txt b/Userland/Services/AudioServer/CMakeLists.txt index e82b4732b04..a1a0d8803b4 100644 --- a/Userland/Services/AudioServer/CMakeLists.txt +++ b/Userland/Services/AudioServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + AudioServer + RECOMMENDED + TARGETS AudioServer +) + compile_ipc(AudioServer.ipc AudioServerEndpoint.h) compile_ipc(AudioClient.ipc AudioClientEndpoint.h) diff --git a/Userland/Services/ChessEngine/CMakeLists.txt b/Userland/Services/ChessEngine/CMakeLists.txt index 288529a100a..d5b61aab8c8 100644 --- a/Userland/Services/ChessEngine/CMakeLists.txt +++ b/Userland/Services/ChessEngine/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + ChessEngine + TARGETS ChessEngine +) + set(SOURCES ChessEngine.cpp main.cpp diff --git a/Userland/Services/Clipboard/CMakeLists.txt b/Userland/Services/Clipboard/CMakeLists.txt index 4f0e5ab65a5..499c514ab35 100644 --- a/Userland/Services/Clipboard/CMakeLists.txt +++ b/Userland/Services/Clipboard/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Clipboard + REQUIRED + TARGETS Clipboard +) + compile_ipc(ClipboardServer.ipc ClipboardServerEndpoint.h) compile_ipc(ClipboardClient.ipc ClipboardClientEndpoint.h) diff --git a/Userland/Services/CrashDaemon/CMakeLists.txt b/Userland/Services/CrashDaemon/CMakeLists.txt index 232c4d5a843..c4fee7622b1 100644 --- a/Userland/Services/CrashDaemon/CMakeLists.txt +++ b/Userland/Services/CrashDaemon/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + CrashDaemon + REQUIRED + TARGETS CrashDaemon +) + set(SOURCES main.cpp ) diff --git a/Userland/Services/DHCPClient/CMakeLists.txt b/Userland/Services/DHCPClient/CMakeLists.txt index 6fddd4a21f7..30d3dd70d24 100644 --- a/Userland/Services/DHCPClient/CMakeLists.txt +++ b/Userland/Services/DHCPClient/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + DHCPClient + REQUIRED + TARGETS DHCPClient +) + set(SOURCES DHCPv4Client.cpp DHCPv4.cpp diff --git a/Userland/Services/EchoServer/CMakeLists.txt b/Userland/Services/EchoServer/CMakeLists.txt index e7d67fe14e4..498be2d59f3 100644 --- a/Userland/Services/EchoServer/CMakeLists.txt +++ b/Userland/Services/EchoServer/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + EchoServer + TARGETS EchoServer +) + set(SOURCES Client.cpp main.cpp diff --git a/Userland/Services/FileOperation/CMakeLists.txt b/Userland/Services/FileOperation/CMakeLists.txt index 6373889dc59..f54162e8859 100644 --- a/Userland/Services/FileOperation/CMakeLists.txt +++ b/Userland/Services/FileOperation/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + FileOperation + TARGETS FileOperation +) + set(SOURCES main.cpp ) diff --git a/Userland/Services/ImageDecoder/CMakeLists.txt b/Userland/Services/ImageDecoder/CMakeLists.txt index 56482fe31de..9677a1c15ba 100644 --- a/Userland/Services/ImageDecoder/CMakeLists.txt +++ b/Userland/Services/ImageDecoder/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + ImageDecoder + TARGETS ImageDecoder +) + compile_ipc(ImageDecoderServer.ipc ImageDecoderServerEndpoint.h) compile_ipc(ImageDecoderClient.ipc ImageDecoderClientEndpoint.h) diff --git a/Userland/Services/InspectorServer/CMakeLists.txt b/Userland/Services/InspectorServer/CMakeLists.txt index 2adbe4a4d63..d5ec047757d 100644 --- a/Userland/Services/InspectorServer/CMakeLists.txt +++ b/Userland/Services/InspectorServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + InspectorServer + REQUIRED + TARGETS InspectorServer +) + compile_ipc(InspectorServer.ipc InspectorServerEndpoint.h) compile_ipc(InspectorClient.ipc InspectorClientEndpoint.h) diff --git a/Userland/Services/KeyboardPreferenceLoader/CMakeLists.txt b/Userland/Services/KeyboardPreferenceLoader/CMakeLists.txt index fdf613f09de..a2a9000d4be 100644 --- a/Userland/Services/KeyboardPreferenceLoader/CMakeLists.txt +++ b/Userland/Services/KeyboardPreferenceLoader/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + KeyboardPreferenceLoader + REQUIRED + TARGETS KeyboardPreferenceLoader keymap +) + set(SOURCES main.cpp ) diff --git a/Userland/Services/LaunchServer/CMakeLists.txt b/Userland/Services/LaunchServer/CMakeLists.txt index 29308ce7f11..137b3285b09 100644 --- a/Userland/Services/LaunchServer/CMakeLists.txt +++ b/Userland/Services/LaunchServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + LaunchServer + REQUIRED + TARGETS LaunchServer +) + compile_ipc(LaunchServer.ipc LaunchServerEndpoint.h) compile_ipc(LaunchClient.ipc LaunchClientEndpoint.h) diff --git a/Userland/Services/LookupServer/CMakeLists.txt b/Userland/Services/LookupServer/CMakeLists.txt index 3308de8b9ad..84cf215339a 100644 --- a/Userland/Services/LookupServer/CMakeLists.txt +++ b/Userland/Services/LookupServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + LookupServer + REQUIRED + TARGETS LookupServer +) + compile_ipc(LookupServer.ipc LookupServerEndpoint.h) compile_ipc(LookupClient.ipc LookupClientEndpoint.h) diff --git a/Userland/Services/NotificationServer/CMakeLists.txt b/Userland/Services/NotificationServer/CMakeLists.txt index a28d9f16a5c..fc59c4d4e0b 100644 --- a/Userland/Services/NotificationServer/CMakeLists.txt +++ b/Userland/Services/NotificationServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + NotificationServer + REQUIRED + TARGETS NotificationServer +) + compile_ipc(NotificationServer.ipc NotificationServerEndpoint.h) compile_ipc(NotificationClient.ipc NotificationClientEndpoint.h) diff --git a/Userland/Services/RequestServer/CMakeLists.txt b/Userland/Services/RequestServer/CMakeLists.txt index c027c7e4ea5..50333676043 100644 --- a/Userland/Services/RequestServer/CMakeLists.txt +++ b/Userland/Services/RequestServer/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + RequestServer + TARGETS RequestServer +) + compile_ipc(RequestServer.ipc RequestServerEndpoint.h) compile_ipc(RequestClient.ipc RequestClientEndpoint.h) diff --git a/Userland/Services/SystemServer/CMakeLists.txt b/Userland/Services/SystemServer/CMakeLists.txt index fda6eb1bcc1..c648051333f 100644 --- a/Userland/Services/SystemServer/CMakeLists.txt +++ b/Userland/Services/SystemServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + SystemServer + REQUIRED + TARGETS SystemServer +) + set(SOURCES main.cpp Service.cpp diff --git a/Userland/Services/Taskbar/CMakeLists.txt b/Userland/Services/Taskbar/CMakeLists.txt index 1367480921d..dd04d7584d5 100644 --- a/Userland/Services/Taskbar/CMakeLists.txt +++ b/Userland/Services/Taskbar/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Taskbar + REQUIRED + TARGETS Taskbar +) + set(SOURCES main.cpp ClockWidget.cpp diff --git a/Userland/Services/TelnetServer/CMakeLists.txt b/Userland/Services/TelnetServer/CMakeLists.txt index e19ae8bac6a..9f0ebb54144 100644 --- a/Userland/Services/TelnetServer/CMakeLists.txt +++ b/Userland/Services/TelnetServer/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + TelnetServer + TARGETS TelnetServer +) + set(SOURCES Client.cpp main.cpp diff --git a/Userland/Services/WebContent/CMakeLists.txt b/Userland/Services/WebContent/CMakeLists.txt index 14f94053f22..a1886c6b63d 100644 --- a/Userland/Services/WebContent/CMakeLists.txt +++ b/Userland/Services/WebContent/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + WebContent + TARGETS WebContent +) + compile_ipc(WebContentServer.ipc WebContentServerEndpoint.h) compile_ipc(WebContentClient.ipc WebContentClientEndpoint.h) diff --git a/Userland/Services/WebServer/CMakeLists.txt b/Userland/Services/WebServer/CMakeLists.txt index 5cb8b7384fd..02e04008fb2 100644 --- a/Userland/Services/WebServer/CMakeLists.txt +++ b/Userland/Services/WebServer/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + WebServer + TARGETS WebServer +) + set(SOURCES Client.cpp Configuration.cpp diff --git a/Userland/Services/WebSocket/CMakeLists.txt b/Userland/Services/WebSocket/CMakeLists.txt index 2dc8971c2c2..47b73ae2666 100644 --- a/Userland/Services/WebSocket/CMakeLists.txt +++ b/Userland/Services/WebSocket/CMakeLists.txt @@ -1,3 +1,8 @@ +serenity_component( + WebSocket + TARGETS WebSocket +) + compile_ipc(WebSocketServer.ipc WebSocketServerEndpoint.h) compile_ipc(WebSocketClient.ipc WebSocketClientEndpoint.h) diff --git a/Userland/Services/WindowServer/CMakeLists.txt b/Userland/Services/WindowServer/CMakeLists.txt index 533e0041073..5eb4948f0ec 100644 --- a/Userland/Services/WindowServer/CMakeLists.txt +++ b/Userland/Services/WindowServer/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + WindowServer + REQUIRED + TARGETS WindowServer +) + compile_ipc(WindowServer.ipc WindowServerEndpoint.h) compile_ipc(WindowClient.ipc WindowClientEndpoint.h) compile_ipc(WindowManagerServer.ipc WindowManagerServerEndpoint.h) diff --git a/Userland/Shell/CMakeLists.txt b/Userland/Shell/CMakeLists.txt index 3777b883b8a..d14cfe6b07a 100644 --- a/Userland/Shell/CMakeLists.txt +++ b/Userland/Shell/CMakeLists.txt @@ -1,3 +1,9 @@ +serenity_component( + Shell + REQUIRED + TARGETS Shell +) + set(SOURCES AST.cpp Builtin.cpp diff --git a/Userland/Utilities/CMakeLists.txt b/Userland/Utilities/CMakeLists.txt index 79581146b81..f9d804806f4 100644 --- a/Userland/Utilities/CMakeLists.txt +++ b/Userland/Utilities/CMakeLists.txt @@ -1,17 +1,53 @@ file(GLOB CMD_SOURCES CONFIGURE_DEPENDS "*.cpp") -list(APPEND SPECIAL_TARGETS "test" "install") +list(APPEND SPECIAL_TARGETS test install) +list(APPEND REQUIRED_TARGETS + arp base64 basename cat chmod chown chroot clear cp cut date dd df dirname dmesg du echo env expr false fgrep + file find grep groups head host hostname id ifconfig kill killall ln ls mkdir mount mv nproc + pidof ping pmap ps readlink realpath reboot rm rmdir seq shutdown sleep sort stat stty su tail test + touch tr true umount uname uniq uptime w wc which whoami xargs yes +) +list(APPEND RECOMMENDED_TARGETS + adjtime aplay avol bt checksum chres cksum copy fortune gunzip gzip init keymap lsirq lsof lspci man mknod mktemp + modload modunload more nc netstat notify ntpquery open pape passwd pls printf pro shot tar tt unzip zip +) + +# FIXME: Support specifying component dependencies for utilities (e.g. WebSocket for telws) foreach(CMD_SRC ${CMD_SOURCES}) get_filename_component(CMD_NAME ${CMD_SRC} NAME_WE) if (CMD_NAME IN_LIST SPECIAL_TARGETS) - add_executable("${CMD_NAME}-bin" ${CMD_SRC}) - target_link_libraries("${CMD_NAME}-bin" LibCore) - install(TARGETS "${CMD_NAME}-bin" RUNTIME DESTINATION bin) + set(TARGET_NAME "${CMD_NAME}-bin") + else() + set(TARGET_NAME "${CMD_NAME}") + endif() + if(CMD_NAME IN_LIST REQUIRED_TARGETS) + serenity_component( + ${CMD_NAME} + REQUIRED + TARGETS ${TARGET_NAME} + ) + elseif(CMD_NAME IN_LIST RECOMMENDED_TARGETS) + serenity_component( + ${CMD_NAME} + RECOMMENDED + TARGETS ${TARGET_NAME} + ) + else() + serenity_component( + ${CMD_NAME} + TARGETS ${TARGET_NAME} + ) + endif() + if (CMD_NAME IN_LIST SPECIAL_TARGETS) + add_executable(${TARGET_NAME} ${CMD_SRC}) + target_link_libraries(${TARGET_NAME} LibCore) + install(TARGETS ${TARGET_NAME} RUNTIME DESTINATION bin) install(CODE "file(RENAME ${CMAKE_INSTALL_PREFIX}/bin/${CMD_NAME}-bin ${CMAKE_INSTALL_PREFIX}/bin/${CMD_NAME})") else() add_executable(${CMD_NAME} ${CMD_SRC}) + set_target_properties(${CMD_NAME} PROPERTIES EXCLUDE_FROM_ALL TRUE) target_link_libraries(${CMD_NAME} LibCore) - install(TARGETS ${CMD_NAME} RUNTIME DESTINATION bin) + install(TARGETS ${CMD_NAME} RUNTIME DESTINATION bin OPTIONAL) endif() endforeach()