Add CMake option to exclude sample files from the embedded resources

The compilation of the WSJT-X resources file requires a lot of virtual
memory  because of  the  large .WAV  files  included.  For  developers
building on very limited resource  machines like single board embedded
platforms there is  now an option WSJT_EMBED_SAMPLES which  can be set
to OFF to skip the inclusion of the sample files in the WSJT_X binary.

The sample files may still be  added manually to the target machine if
required.

git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@5130 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This commit is contained in:
Bill Somerville 2015-03-27 01:48:41 +00:00
parent 7bd2de5ff3
commit 75bbb2869d
3 changed files with 53 additions and 40 deletions

View File

@ -112,6 +112,7 @@ option (WSJT_TRACE_CAT_POLLS "Debugging option that turns on CAT diagnostics dur
option (WSJT_HAMLIB_TRACE "Debugging option that turns on full Hamlib internal diagnostics.") option (WSJT_HAMLIB_TRACE "Debugging option that turns on full Hamlib internal diagnostics.")
option (WSJT_SOFT_KEYING "Apply a ramp to CW keying envelope to reduce transients." ON) option (WSJT_SOFT_KEYING "Apply a ramp to CW keying envelope to reduce transients." ON)
option (WSJT_SKIP_MANPAGES "Skip *nix manpage generation.") option (WSJT_SKIP_MANPAGES "Skip *nix manpage generation.")
option (WSJT_EMBED_SAMPLES "Embed sample files into WSJT-X resources." ON)
CMAKE_DEPENDENT_OPTION (WSJT_QDEBUG_IN_RELEASE "Leave Qt debugging statements in Release configuration." OFF CMAKE_DEPENDENT_OPTION (WSJT_QDEBUG_IN_RELEASE "Leave Qt debugging statements in Release configuration." OFF
"NOT is_debug_build" OFF) "NOT is_debug_build" OFF)
@ -382,6 +383,19 @@ set (all_C_and_CXXSRCS
${all_CXXSRCS} ${all_CXXSRCS}
) )
set (SAMPLE_FILES
samples/130418_1742.wav
samples/130610_2343.wav
)
if (WSJT_EMBED_SAMPLES)
foreach (SAMPLE ${SAMPLE_FILES})
set (SAMPLE_PATHS "${SAMPLE_PATHS}\n <file alias=\"samples/${SAMPLE}\">${CMAKE_SOURCE_DIR}/${SAMPLE}</file>")
endforeach (SAMPLE ${SAMPLE_FILES})
endif (WSJT_EMBED_SAMPLES)
configure_file (wsjtx.qrc.in wsjtx.qrc @ONLY)
if (APPLE) if (APPLE)
set (WSJTX_ICON_FILE ${CMAKE_PROJECT_NAME}.icns) set (WSJTX_ICON_FILE ${CMAKE_PROJECT_NAME}.icns)
set (ICONSRCS set (ICONSRCS
@ -679,7 +693,7 @@ qt5_wrap_ui (wsjt_qt_GENUISRCS ${wsjt_qt_UISRCS})
qt5_wrap_ui (wsjtx_GENUISRCS ${wsjtx_UISRCS}) qt5_wrap_ui (wsjtx_GENUISRCS ${wsjtx_UISRCS})
# Resource generation # Resource generation
qt5_add_resources (wsjtx_RESOURCES_RCC wsjtx.qrc) qt5_add_resources (wsjtx_RESOURCES_RCC ${CMAKE_BINARY_DIR}/wsjtx.qrc)
# AX COM servers # AX COM servers
if (WIN32) if (WIN32)

View File

@ -1,39 +0,0 @@
<!DOCTYPE RCC><RCC version="1.0">
<qresource>
<file>shortcuts.txt</file>
<file>mouse_commands.txt</file>
<file>prefixes.txt</file>
<file>cty.dat</file>
<file>kvasd.dat</file>
<file>Palettes/Banana.pal</file>
<file>Palettes/Blue1.pal</file>
<file>Palettes/Blue2.pal</file>
<file>Palettes/Blue3.pal</file>
<file>Palettes/Brown.pal</file>
<file>Palettes/Cyan1.pal</file>
<file>Palettes/Cyan2.pal</file>
<file>Palettes/Cyan3.pal</file>
<file>Palettes/Default.pal</file>
<file>Palettes/Digipan.pal</file>
<file>Palettes/Fldigi.pal</file>
<file>Palettes/Gray1.pal</file>
<file>Palettes/Gray2.pal</file>
<file>Palettes/Green1.pal</file>
<file>Palettes/Green2.pal</file>
<file>Palettes/Jungle.pal</file>
<file>Palettes/Linrad.pal</file>
<file>Palettes/Negative.pal</file>
<file>Palettes/Orange.pal</file>
<file>Palettes/Pink.pal</file>
<file>Palettes/Rainbow.pal</file>
<file>Palettes/Scope.pal</file>
<file>Palettes/Sunburst.pal</file>
<file>Palettes/VK4BDJ.pal</file>
<file>Palettes/YL2KF.pal</file>
<file>Palettes/Yellow1.pal</file>
<file>Palettes/Yellow2.pal</file>
<file>Palettes/ZL1FZ.pal</file>
<file>samples/130418_1742.wav</file>
<file>samples/130610_2343.wav</file>
</qresource>
</RCC>

38
wsjtx.qrc.in Normal file
View File

@ -0,0 +1,38 @@
<!DOCTYPE RCC><RCC version="1.0">
<qresource>
<file alias="shortcuts.txt">@CMAKE_SOURCE_DIR@/shortcuts.txt</file>
<file alias="mouse_commands.txt">@CMAKE_SOURCE_DIR@/mouse_commands.txt</file>
<file alias="prefixes.txt">@CMAKE_SOURCE_DIR@/prefixes.txt</file>
<file alias="cty.dat">@CMAKE_SOURCE_DIR@/cty.dat</file>
<file alias="kvasd.dat">@CMAKE_SOURCE_DIR@/kvasd.dat</file>
<file alias="Palettes/Banana.pal">@CMAKE_SOURCE_DIR@/Palettes/Banana.pal</file>
<file alias="Palettes/Blue1.pal">@CMAKE_SOURCE_DIR@/Palettes/Blue1.pal</file>
<file alias="Palettes/Blue2.pal">@CMAKE_SOURCE_DIR@/Palettes/Blue2.pal</file>
<file alias="Palettes/Blue3.pal">@CMAKE_SOURCE_DIR@/Palettes/Blue3.pal</file>
<file alias="Palettes/Brown.pal">@CMAKE_SOURCE_DIR@/Palettes/Brown.pal</file>
<file alias="Palettes/Cyan1.pal">@CMAKE_SOURCE_DIR@/Palettes/Cyan1.pal</file>
<file alias="Palettes/Cyan2.pal">@CMAKE_SOURCE_DIR@/Palettes/Cyan2.pal</file>
<file alias="Palettes/Cyan3.pal">@CMAKE_SOURCE_DIR@/Palettes/Cyan3.pal</file>
<file alias="Palettes/Default.pal">@CMAKE_SOURCE_DIR@/Palettes/Default.pal</file>
<file alias="Palettes/Digipan.pal">@CMAKE_SOURCE_DIR@/Palettes/Digipan.pal</file>
<file alias="Palettes/Fldigi.pal">@CMAKE_SOURCE_DIR@/Palettes/Fldigi.pal</file>
<file alias="Palettes/Gray1.pal">@CMAKE_SOURCE_DIR@/Palettes/Gray1.pal</file>
<file alias="Palettes/Gray2.pal">@CMAKE_SOURCE_DIR@/Palettes/Gray2.pal</file>
<file alias="Palettes/Green1.pal">@CMAKE_SOURCE_DIR@/Palettes/Green1.pal</file>
<file alias="Palettes/Green2.pal">@CMAKE_SOURCE_DIR@/Palettes/Green2.pal</file>
<file alias="Palettes/Jungle.pal">@CMAKE_SOURCE_DIR@/Palettes/Jungle.pal</file>
<file alias="Palettes/Linrad.pal">@CMAKE_SOURCE_DIR@/Palettes/Linrad.pal</file>
<file alias="Palettes/Negative.pal">@CMAKE_SOURCE_DIR@/Palettes/Negative.pal</file>
<file alias="Palettes/Orange.pal">@CMAKE_SOURCE_DIR@/Palettes/Orange.pal</file>
<file alias="Palettes/Pink.pal">@CMAKE_SOURCE_DIR@/Palettes/Pink.pal</file>
<file alias="Palettes/Rainbow.pal">@CMAKE_SOURCE_DIR@/Palettes/Rainbow.pal</file>
<file alias="Palettes/Scope.pal">@CMAKE_SOURCE_DIR@/Palettes/Scope.pal</file>
<file alias="Palettes/Sunburst.pal">@CMAKE_SOURCE_DIR@/Palettes/Sunburst.pal</file>
<file alias="Palettes/VK4BDJ.pal">@CMAKE_SOURCE_DIR@/Palettes/VK4BDJ.pal</file>
<file alias="Palettes/YL2KF.pal">@CMAKE_SOURCE_DIR@/Palettes/YL2KF.pal</file>
<file alias="Palettes/Yellow1.pal">@CMAKE_SOURCE_DIR@/Palettes/Yellow1.pal</file>
<file alias="Palettes/Yellow2.pal">@CMAKE_SOURCE_DIR@/Palettes/Yellow2.pal</file>
<file alias="Palettes/ZL1FZ.pal">@CMAKE_SOURCE_DIR@/Palettes/ZL1FZ.pal</file>
@SAMPLE_PATHS@
</qresource>
</RCC>