diff --git a/cmake/OktetaInternalMacros.cmake b/cmake/OktetaInternalMacros.cmake index a8b755e6..8dfbbc23 100644 --- a/cmake/OktetaInternalMacros.cmake +++ b/cmake/OktetaInternalMacros.cmake @@ -1,333 +1,344 @@ # # Okteta Private Macros # # Copyright 2018 Friedrich W. H. Kossebau # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # 3. The name of the author may not be used to endorse or promote products # derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # ECM include(ECMGenerateHeaders) # CMake include(GenerateExportHeader) include(CMakePackageConfigHelpers) include(CMakeParseArguments) macro(okteta_add_sublibrary _baseName) set(options NO_VERSIONED_INCLUDEDIR REVERSE_NAMESPACE_INCLUDEDIR ) set(oneValueArgs SUBDIR SOURCE_TAG ) set(multiValueArgs NAMESPACE PUBLIC PRIVATE KCFG UI ) cmake_parse_arguments(OKTETA_ADD_SUBLIBRARY "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) string(CONCAT _namespaceConcat ${OKTETA_ADD_SUBLIBRARY_NAMESPACE}) string(TOLOWER "${_namespaceConcat}${_baseName}" _libname) if (OKTETA_ADD_SUBLIBRARY_SOURCE_TAG) set(_sourceTag "_${OKTETA_ADD_SUBLIBRARY_SOURCE_TAG}") else() set(_sourceTag) endif() if (OKTETA_ADD_SUBLIBRARY_SUBDIR) set(_relativePath "${OKTETA_ADD_SUBLIBRARY_SUBDIR}/") set(_egh_relative_param RELATIVE ${OKTETA_ADD_SUBLIBRARY_SUBDIR}) string(REPLACE ".." "PARENTDIR" _subdir_id ${OKTETA_ADD_SUBLIBRARY_SUBDIR}) string(REPLACE "/" "_" _subdir_id ${_subdir_id}) set(_SRCS ${_libname}_${_subdir_id}${_sourceTag}_SRCS) set(_HDRS ${_libname}_${_subdir_id}_HDRS) set(_CCHDRS ${_libname}_${_subdir_id}_CCHDRS) else() set(_relativePath) set(_egh_relative_param) set(_SRCS ${_libname}${_sourceTag}_LIB_SRCS) set(_HDRS ${_libname}_LIB_HDRS) set(_CCHDRS ${_libname}_LIB_CCHDRS) endif() foreach(_classname ${OKTETA_ADD_SUBLIBRARY_PUBLIC} ${OKTETA_ADD_SUBLIBRARY_PRIVATE}) string(TOLOWER "${_classname}" _lc_classname) set(_source "${_relativePath}${_lc_classname}.cpp") set(_actualsource "${CMAKE_CURRENT_SOURCE_DIR}/${_source}") if (EXISTS ${_actualsource}) list(APPEND ${_SRCS} "${_source}") endif() set(_source "${_relativePath}${_lc_classname}_p.cpp") set(_actualsource "${CMAKE_CURRENT_SOURCE_DIR}/${_source}") if (EXISTS ${_actualsource}) list(APPEND ${_SRCS} "${_source}") endif() endforeach() foreach(_kcfg ${OKTETA_ADD_SUBLIBRARY_KCFG}) kconfig_add_kcfg_files(${_SRCS} "${_relativePath}${_kcfg}") endforeach() foreach(_ui ${OKTETA_ADD_SUBLIBRARY_UI}) ki18n_wrap_ui(${_SRCS} "${_relativePath}${_ui}") endforeach() if (OKTETA_ADD_SUBLIBRARY_PUBLIC) set(_cc_include_dir ${OKTETA_ADD_SUBLIBRARY_NAMESPACE}) if (OKTETA_ADD_SUBLIBRARY_REVERSE_NAMESPACE_INCLUDEDIR) list(REVERSE _cc_include_dir) endif() string(REPLACE ";" "/" _cc_include_dir "${_cc_include_dir}") ecm_generate_headers(${_CCHDRS} HEADER_NAMES ${OKTETA_ADD_SUBLIBRARY_PUBLIC} ${_egh_relative_param} PREFIX ${_cc_include_dir} REQUIRED_HEADERS ${_HDRS} ) endif() if (OKTETA_ADD_SUBLIBRARY_SUBDIR) list(APPEND ${_libname}${_sourceTag}_LIB_SRCS ${${_SRCS}}) list(APPEND ${_libname}_LIB_HDRS ${${_HDRS}}) list(APPEND ${_libname}_LIB_CCHDRS ${${_CCHDRS}}) endif() endmacro() function(okteta_add_library _baseName) set(options NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE NO_PACKAGE_NAMESPACED_INCLUDEDIR REVERSE_NAMESPACE_LIB REVERSE_NAMESPACE_INCLUDEDIR LOWERCASE_LIB ) set(oneValueArgs INTERNAL_BASENAME + INCLUDEDIR_PACKAGE_NAMESPACE VERSION SOVERSION ) set(multiValueArgs NAMESPACE ABIVERSION PUBLIC PRIVATE SOURCES HEADERS CCHEADERS ) cmake_parse_arguments(OKTETA_ADD_LIBRARY "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) if (NOT OKTETA_ADD_LIBRARY_INTERNAL_BASENAME) set(OKTETA_ADD_LIBRARY_INTERNAL_BASENAME ${_baseName}) endif() string(CONCAT _namespacePrefix ${OKTETA_ADD_LIBRARY_NAMESPACE}) if (OKTETA_ADD_LIBRARY_ABIVERSION) list(LENGTH OKTETA_ADD_LIBRARY_ABIVERSION _abiversionCount) list(LENGTH OKTETA_ADD_LIBRARY_NAMESPACE _namespaceCount) if (NOT _abiversionCount EQUAL _namespaceCount) message(FATAL_ERROR "ABIVERSION needs to have as many elements as NAMESPACE if used") endif() math(EXPR _namespaceLastIndex "${_namespaceCount} - 1") set(_versioned_namespace) foreach(val RANGE ${_namespaceLastIndex}) list(GET OKTETA_ADD_LIBRARY_NAMESPACE ${val} _namespace) list(GET OKTETA_ADD_LIBRARY_ABIVERSION ${val} _abiversion) list(APPEND _versioned_namespace "${_namespace}${_abiversion}") endforeach() string(CONCAT _versionedNamespacePrefix ${_versioned_namespace}) else() set(_versioned_namespace ${OKTETA_ADD_LIBRARY_NAMESPACE}) set(_versionedNamespacePrefix "${_namespacePrefix}") endif() set(_fullName "${_namespacePrefix}${_baseName}") set(_fullInternalName "${_namespacePrefix}${OKTETA_ADD_LIBRARY_INTERNAL_BASENAME}") set(_targets_export_name "${_fullName}Targets") set(_libraryName ${_versioned_namespace}) if (OKTETA_ADD_LIBRARY_REVERSE_NAMESPACE_LIB) list(REVERSE _libraryName) endif() string(CONCAT _libraryName ${_libraryName} ${_baseName}) if (OKTETA_ADD_LIBRARY_LOWERCASE_LIB) string(TOLOWER ${_libraryName} _libraryName) endif() set(_targetName ${_fullName}) string(TOLOWER ${_fullInternalName} _lc_fullInternalName) if (OKTETA_ADD_LIBRARY_NO_VERSIONED_INCLUDEDIR) set(_cc_include_dir ${OKTETA_ADD_LIBRARY_NAMESPACE}) else() set(_cc_include_dir ${_versioned_namespace}) endif() if (OKTETA_ADD_LIBRARY_REVERSE_NAMESPACE_INCLUDEDIR) list(REVERSE _cc_include_dir) endif() string(REPLACE ";" "/" _cc_include_dir "${_cc_include_dir}") string(TOLOWER ${_cc_include_dir} _include_dir) add_library(${_targetName} SHARED ${OKTETA_ADD_LIBRARY_SOURCES} ) if (NOT OKTETA_ADD_LIBRARY_NO_TARGET_NAMESPACE) add_library("${_namespacePrefix}::${_baseName}" ALIAS ${_targetName}) set(_export_name_args EXPORT_NAME ${_baseName}) else() set(_export_name_args) endif() set(_exportHeaderFilePath ${CMAKE_CURRENT_BINARY_DIR}/${_include_dir}/${_lc_fullInternalName}_export.h) generate_export_header(${_targetName} BASE_NAME ${_fullInternalName} EXPORT_FILE_NAME ${_exportHeaderFilePath} ) target_link_libraries(${_targetName} PUBLIC ${OKTETA_ADD_LIBRARY_PUBLIC} PRIVATE ${OKTETA_ADD_LIBRARY_PRIVATE} ) target_include_directories(${_targetName} PUBLIC "$" ) set_target_properties(${_targetName} PROPERTIES ${_export_name_args} OUTPUT_NAME ${_libraryName} VERSION ${OKTETA_ADD_LIBRARY_VERSION} SOVERSION ${OKTETA_ADD_LIBRARY_SOVERSION} ) install( TARGETS ${_targetName} EXPORT ${_targets_export_name} ${KDE_INSTALL_TARGETS_DEFAULT_ARGS} ) if (OKTETA_ADD_LIBRARY_HEADERS OR OKTETA_ADD_LIBRARY_CCHEADERS) if (OKTETA_ADD_LIBRARY_NO_PACKAGE_NAMESPACED_INCLUDEDIR) set(_include_install_dir "${KDE_INSTALL_INCLUDEDIR}") else() - set(_include_install_dir "${KDE_INSTALL_INCLUDEDIR}/${_versionedNamespacePrefix}${_baseName}") + if (OKTETA_ADD_LIBRARY_INCLUDEDIR_PACKAGE_NAMESPACE) + set(_include_dir_package_namespace "${OKTETA_ADD_LIBRARY_INCLUDEDIR_PACKAGE_NAMESPACE}") + else() + if (OKTETA_ADD_LIBRARY_NO_VERSIONED_PACKAGE_NAMESPACE) + set(_include_dir_package_namespace "${_namespacePrefix}${_baseName}") + else() + set(_include_dir_package_namespace "${_versionedNamespacePrefix}${_baseName}") + endif() + endif() + set(_include_install_dir "${KDE_INSTALL_INCLUDEDIR}/${_include_dir_package_namespace}") endif() target_include_directories(${_targetName} INTERFACE "$" ) install( FILES ${OKTETA_ADD_LIBRARY_HEADERS} ${_exportHeaderFilePath} DESTINATION "${_include_install_dir}/${_include_dir}" COMPONENT Devel ) install( FILES ${OKTETA_ADD_LIBRARY_CCHEADERS} DESTINATION "${_include_install_dir}/${_cc_include_dir}" COMPONENT Devel ) endif() endfunction() function(okteta_add_cmakeconfig _baseName) set(options NO_TARGET_NAMESPACE ) set(oneValueArgs VERSION ) set(multiValueArgs NAMESPACE ABIVERSION ) cmake_parse_arguments(OKTETA_ADD_CMAKECONFIG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) string(CONCAT _namespacePrefix ${OKTETA_ADD_CMAKECONFIG_NAMESPACE}) if (OKTETA_ADD_CMAKECONFIG_ABIVERSION) list(LENGTH OKTETA_ADD_CMAKECONFIG_ABIVERSION _abiversionCount) list(LENGTH OKTETA_ADD_CMAKECONFIG_NAMESPACE _namespaceCount) if (NOT _abiversionCount EQUAL _namespaceCount) message(FATAL_ERROR "ABIVERSION needs to have as many elements as NAMESPACE if used") endif() math(EXPR _namespaceLastIndex "${_namespaceCount} - 1") foreach(val RANGE ${_namespaceLastIndex}) list(GET OKTETA_ADD_CMAKECONFIG_NAMESPACE ${val} _namespace) list(GET OKTETA_ADD_CMAKECONFIG_ABIVERSION ${val} _abiversion) string(APPEND _fullVersionedName ${_namespace} ${_abiversion}) endforeach() string(APPEND _fullVersionedName ${_baseName}) else() set(_fullVersionedName "${_namespacePrefix}${_baseName}") endif() set(_targets_export_name "${_fullVersionedName}Targets") # create a Config.cmake and a ConfigVersion.cmake file and install them set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/${_fullVersionedName}") if (OKTETA_ADD_CMAKECONFIG_VERSION) set(_configVersionFilePath "${CMAKE_CURRENT_BINARY_DIR}/${_fullVersionedName}ConfigVersion.cmake") if(NOT OKTETA_ADD_CMAKECONFIG_COMPATIBILITY) set(OKTETA_ADD_CMAKECONFIG_COMPATIBILITY AnyNewerVersion) endif() write_basic_package_version_file("${_configVersionFilePath}" VERSION ${OKTETA_ADD_CMAKECONFIG_VERSION} COMPATIBILITY ${OKTETA_ADD_CMAKECONFIG_COMPATIBILITY} ) else() set(_configVersionFilePath) endif() set(_configFileTemplatePath "${CMAKE_CURRENT_SOURCE_DIR}/${_fullVersionedName}Config.cmake.in") set(_configFilePath "${CMAKE_CURRENT_BINARY_DIR}/${_fullVersionedName}Config.cmake") configure_package_config_file( "${_configFileTemplatePath}" "${_configFilePath}" INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR} ) install( FILES "${_configFilePath}" "${_configVersionFilePath}" DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) if(NOT OKTETA_ADD_CMAKECONFIG_NO_TARGET_NAMESPACE) set(_namespace_args NAMESPACE "${_namespacePrefix}::") endif() install(EXPORT ${_targets_export_name} FILE "${_fullVersionedName}Targets.cmake" ${_namespace_args} DESTINATION "${CMAKECONFIG_INSTALL_DIR}" COMPONENT Devel ) endfunction() diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt index 29f699f7..2f043f0a 100644 --- a/core/CMakeLists.txt +++ b/core/CMakeLists.txt @@ -1,126 +1,126 @@ set(OKTETACORE_VERSION ${OKTETALIBS_LIB_VERSION}) set(OKTETACORE_SO_VERSION ${OKTETALIBS_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"liboktetacore\") macro(OKTETACORE_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Core NAMESPACE Okteta SUBDIR ${_subdir} ${ARGN} ) endmacro() oktetacore_add_sublibrary(codecs PRIVATE BinaryByteCodec ValueCodec CharCodec DecimalByteCodec USASCIICharCodec EBCDIC1047CharCodec JISX0201CharCodec HexadecimalByteCodec OctalByteCodec TextCharCodec ) oktetacore_add_sublibrary(piecetable PRIVATE PieceList PieceTable AbstractPieceTableChange # FillPieceTableChange InsertPieceTableChange RemovePieceTableChange ReplacePieceTableChange SwapRangesPieceTableChange GroupPieceTableChange PieceTableChangehistory RevertablePiecetable ) okteta_add_sublibrary(Core NAMESPACE Okteta PUBLIC OktetaCore Range NumberRange Address AddressRange Size Byte AbstractByteArrayModel Versionable Bookmarkable ChangesDescribable ChangeHistory ByteArrayModel #FileByteArrayModel PieceTableByteArrayModel Character ArrayChangeMetrics ArrayChangeMetricsList ByteArrayChange Bookmark BookmarksConstIteratorAdapter # TODO: make private or move adapter class to iterator BookmarksConstIterator WordByteArrayService ValueCodec CharCodec PRIVATE FileByteArrayModel FixedSizeByteArrayModel BookmarkListConstIteratorAdapter AddressRangeList BookmarkList ) #don't compile sources twice by using object libraries #add_library( oktetacore_objs OBJECT ${oktetacore_LIB_SRCS} ) #target_include_directories( oktetacore_objs PUBLIC $ ) #set( oktetacore_LIB_OBJS $) # compile flags don't get set for object libraries, since cannot link to target #TODO: find out how to properly use targets for object libraries set( oktetacore_LIB_OBJS ${oktetacore_LIB_SRCS} ) okteta_add_library(Core NAMESPACE Okteta PUBLIC Qt5::Core PRIVATE KF5::I18n KF5::Codecs #needed for codecs VERSION ${OKTETACORE_VERSION} SOVERSION ${OKTETACORE_SO_VERSION} ABIVERSION ${OKTETALIBS_ABI_VERSION} SOURCES ${oktetacore_LIB_SRCS} HEADERS ${oktetacore_LIB_HDRS} CCHEADERS ${oktetacore_LIB_CCHDRS} NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE LOWERCASE_LIB ) okteta_add_cmakeconfig(Core NAMESPACE Okteta NO_TARGET_NAMESPACE VERSION ${OKTETACORE_VERSION} # ABIVERSION ${OKTETALIBS_ABI_VERSION} ) if(BUILD_TESTING) add_library( testoktetacore STATIC ${oktetacore_LIB_OBJS} ) set_target_properties( testoktetacore PROPERTIES COMPILE_FLAGS -DOKTETACORE_STATIC_DEFINE ) target_include_directories( testoktetacore PUBLIC ${CMAKE_CURRENT_BINARY_DIR} ) target_link_libraries( testoktetacore Qt5::Core KF5::I18n KF5::Codecs ) add_subdirectory( piecetable/tests ) add_subdirectory( tests ) endif() diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index 2d3d1fc5..20a72130 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -1,110 +1,110 @@ set(OKTETAGUI_VERSION ${OKTETALIBS_LIB_VERSION}) set(OKTETAGUI_SO_VERSION ${OKTETALIBS_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"liboktetagui\") include_directories( libcolumnsview ) macro(OKTETAGUI_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Gui NAMESPACE Okteta SUBDIR ${_subdir} ${ARGN} ) endmacro() oktetagui_add_sublibrary(controller PRIVATE KController AbstractMouseController AbstractWheelController KEditor KNavigator KTabController KCharEditor KValueEditor MouseNavigator MousePaster # Dragger ZoomWheelController Dropper ) oktetagui_add_sublibrary(libcolumnsview PUBLIC KAdds # TODO: this header needs to be redone AbstractColumnStylist AbstractColumnRenderer ColumnsView PRIVATE AbstractColumnStylist AbstractColumnRenderer ) okteta_add_sublibrary(Gui NAMESPACE Okteta PUBLIC OktetaGui LinePosition Line LinePositionRange LineRange Coord CoordRange CoordRangeList Selection AbstractByteArrayColumnRenderer CharByteArrayColumnRenderer ValueByteArrayColumnRenderer ByteArrayRowColumnRenderer OffsetColumnRenderer BorderColumnRenderer AbstractByteArrayView ByteArrayColumnView OffsetFormat ByteArrayTableRanges ByteArrayRowView ByteArrayTableLayout WidgetColumnStylist PRIVATE ByteArrayTableCursor KCursor ) okteta_add_library(Gui NAMESPACE Okteta PUBLIC OktetaCore Qt5::Widgets PRIVATE KF5::I18n KF5::ConfigWidgets VERSION ${OKTETAGUI_VERSION} SOVERSION ${OKTETAGUI_SO_VERSION} ABIVERSION ${OKTETALIBS_ABI_VERSION} SOURCES ${oktetagui_LIB_SRCS} HEADERS ${oktetagui_LIB_HDRS} CCHEADERS ${oktetagui_LIB_CCHDRS} NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE LOWERCASE_LIB ) okteta_add_cmakeconfig(Gui NAMESPACE Okteta NO_TARGET_NAMESPACE VERSION ${OKTETAGUI_VERSION} # ABIVERSION ${OKTETALIBS_ABI_VERSION} ) if(BUILD_TESTING) add_subdirectory( test ) # add_library( testoktetacore STATIC ${oktetagui_LIB_SRCS} ) endif() diff --git a/kasten/controllers/CMakeLists.txt b/kasten/controllers/CMakeLists.txt index 7860cf92..2c4df161 100644 --- a/kasten/controllers/CMakeLists.txt +++ b/kasten/controllers/CMakeLists.txt @@ -1,652 +1,652 @@ set(OKTETAKASTENCONTROLLERS_VERSION ${OKTETAKASTEN_LIB_VERSION}) set(OKTETAKASTENCONTROLLERS_SO_VERSION ${OKTETAKASTEN_LIB_SOVERSION}) set( LIBFRAMESPRINT_REL_DIR ../../libs/framesprint ) add_definitions(-DTRANSLATION_DOMAIN=\"liboktetakasten\") include_directories( view/libbytearraychecksum view/libbytearrayfilter view/libfinddialog ${LIBFRAMESPRINT_REL_DIR} ) set(HAVE_QCA2 ${Qca-qt5_FOUND}) configure_file( config-qca2.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-qca2.h ) macro(OKTETAKASTENCONTROLLERS_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Controllers NAMESPACE Okteta Kasten REVERSE_NAMESPACE_INCLUDEDIR SUBDIR ${_subdir} ${ARGN} ) endmacro() macro(OKTETAKASTENCONTROLLERS_ADD_SUBLIBRARY_STRUCTURES_TESTED _subdir) okteta_add_sublibrary(Controllers NAMESPACE Okteta Kasten REVERSE_NAMESPACE_INCLUDEDIR SOURCE_TAG structures_tested SUBDIR ${_subdir} ${ARGN} ) endmacro() oktetakastencontrollers_add_sublibrary(document/info PUBLIC DocumentInfoTool DocumentInfoToolView PRIVATE ByteArrayModelIoDevice DocumentInfoView ) oktetakastencontrollers_add_sublibrary(document/overwriteonly PUBLIC OverwriteOnlyController ) oktetakastencontrollers_add_sublibrary(view/overwritemode PUBLIC OverwriteModeController ) oktetakastencontrollers_add_sublibrary(view/info PUBLIC InfoTool InfoToolFactory InfoToolView InfoToolViewFactory PRIVATE CreateStatisticJob StatisticTableModel InfoView KCFG infoviewsettings.kcfgc ) oktetakastencontrollers_add_sublibrary(view/stringsextract PUBLIC ContainedString StringsExtractTool StringsExtractToolFactory StringsExtractToolView StringsExtractToolViewFactory PRIVATE ExtractStringsJob ContainedStringTableModel StringsExtractView ) oktetakastencontrollers_add_sublibrary(view/libbytearraychecksum PRIVATE AbstractByteArrayChecksumAlgorithm AbstractByteArrayChecksumParameterSet AbstractByteArrayChecksumParameterSetEdit ByteArrayChecksumAlgorithmFactory ByteArrayChecksumParameterSetEditFactory ) if( Qca-qt5_FOUND ) set( QCA2CHECKSUM_CLASSES Qca2ByteArrayChecksumAlgorithm ) endif() oktetakastencontrollers_add_sublibrary(view/libbytearraychecksum/algorithm PRIVATE Crc32ByteArrayChecksumAlgorithm Adler32ByteArrayChecksumAlgorithm ModSum8ByteArrayChecksumAlgorithm ModSum16ByteArrayChecksumAlgorithm ModSum32ByteArrayChecksumAlgorithm ModSum64ByteArrayChecksumAlgorithm ## NEWCHECKSUM(start) ## Here add the names of your classes of your checksum algorithm, ## e.g. ## MyByteArrayChecksumAlgorithm ## NEWCHECKSUM(end) NoByteArrayChecksumParameterSet NoByteArrayChecksumParameterSetEdit ModSumByteArrayChecksumParameterSet ModSumByteArrayChecksumParameterSetEdit ## NEWCHECKSUMPARAMETERSET(start) ## Here add the names of your classes of your checksum parameter set and ## of the widget to edit the checksum parameter set, ## e.g. ## MyByteArrayChecksumParameterSet ## MyByteArrayChecksumParameterSetEdit ## NEWCHECKSUMPARAMETERSET(end) ${QCA2CHECKSUM_CLASSES} ) oktetakastencontrollers_add_sublibrary(view/checksum PUBLIC ChecksumTool ChecksumToolView ChecksumToolFactory ChecksumToolViewFactory PRIVATE ChecksumCalculateJob ChecksumLogging ChecksumView ) oktetakastencontrollers_add_sublibrary(view/libfinddialog PUBLIC KFindDirection PRIVATE KAbstractFindDialog ) oktetakastencontrollers_add_sublibrary(view/poddecoder/typecodecs PRIVATE Binary8Codec Octal8Codec Hexadecimal8Codec UInt8Codec UInt16Codec UInt32Codec UInt64Codec SInt8Codec SInt16Codec SInt32Codec SInt64Codec Float32Codec Float64Codec Char8Codec Utf8Codec ) oktetakastencontrollers_add_sublibrary(view/poddecoder PUBLIC PODData PODDecoderTool PODDecoderToolView PODDecoderToolFactory PODDecoderToolViewFactory PRIVATE PODTableModel PODDelegate PODTableView ) oktetakastencontrollers_add_sublibrary(view/poddecoder/typeeditors SOURCE_TAG typeeditor PRIVATE AbstractValue8Editor Binary8Editor Octal8Editor Hexadecimal8Editor UIntSpinBox SIntSpinBox Float32Editor Float64Editor Char8Editor Utf8Editor ) oktetakastencontrollers_add_sublibrary(view/bytetable PUBLIC ByteTableTool ByteTableToolView ByteTableToolFactory ByteTableToolViewFactory PRIVATE ByteTableModel ByteTableView KCFG bytetableviewsettings.kcfgc ) oktetakastencontrollers_add_sublibrary(view/search PUBLIC SearchController SearchUserQueryable PRIVATE KSearchDialog SearchJob SearchTool ) oktetakastencontrollers_add_sublibrary(view/replace PUBLIC ReplaceController ReplaceUserQueryable PRIVATE KReplaceDialog KReplacePrompt ReplaceTool ) oktetakastencontrollers_add_sublibrary(view/libbytearrayfilter PRIVATE AbstractByteArrayFilter AbstractByteArrayFilterParameterSet AbstractByteArrayFilterParameterSetEdit ByteArrayFilterFactory ByteArrayFilterParameterSetEditFactory ) oktetakastencontrollers_add_sublibrary(view/libbytearrayfilter/filter PRIVATE NoByteArrayFilterParameterSet OperandByteArrayFilterParameterSet ReverseByteArrayFilterParameterSet RotateByteArrayFilterParameterSet ## NEWFILTERPARAMETERSET(start) ## Here add the names of your classes of your filter parameter set, ## e.g. ## MyByteArrayFilterParameterSet ## NEWFILTERPARAMETERSET(end) AndByteArrayFilter OrByteArrayFilter XorByteArrayFilter InvertByteArrayFilter ReverseByteArrayFilter RotateByteArrayFilter ShiftByteArrayFilter ## NEWFILTER(start) ## Here add the names of your classes of your filter, ## e.g. ## MyByteArrayFilter ## NEWFILTER(end) NoByteArrayFilterParameterSetedit OperandByteArrayFilterParameterSetedit ReverseByteArrayFilterParameterSetedit RotateByteArrayFilterParameterSetedit ## NEWFILTERPARAMETERSET(start) ## Here add the names of your classes of your widget to edit the filter parameter set, ## e.g. ## MyByteArrayFilterParameterSetedit ## NEWFILTERPARAMETERSET(end) ) oktetakastencontrollers_add_sublibrary(view/filter PUBLIC FilterTool FilterToolView FilterToolFactory FilterToolViewFactory PRIVATE FilterJob FilterView ) oktetakastencontrollers_add_sublibrary(view/charsetconversion PUBLIC CharsetConversionTool CharsetConversionToolView CharsetConversionToolFactory CharsetConversionToolViewFactory PRIVATE CharsetConversionJob CharsetConversionView ) oktetakastencontrollers_add_sublibrary(view/gotooffset PUBLIC GotoOffsetController PRIVATE GotoOffsetTool GotoOffsetView GotoOffsetToolView ) oktetakastencontrollers_add_sublibrary(view/selectrange PUBLIC SelectRangeController PRIVATE SelectRangeTool SelectRangeView SelectRangeToolView ) oktetakastencontrollers_add_sublibrary(view/bookmarks PUBLIC BookmarksController PRIVATE BookmarkEditPopup ) oktetakastencontrollers_add_sublibrary(view/bookmarks PUBLIC BookmarksTool BookmarksToolView BookmarksToolFactory BookmarksToolViewFactory PRIVATE BookmarkListModel BookmarksView ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/datatypes PRIVATE TopLevelDataInformation DataInformation DataInformationbase DummyDataInformation DataInformationwithchildren StructureDataInformation TaggedUnionDataInformation UnionDataInformation PrimitiveFactory PrimitiveDataType ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/datatypes/array PRIVATE ArrayDataInformation AbstractArrayData ComplexArrayData PrimitiveArrayData ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/datatypes/primitive PRIVATE PointerDataInformation CharDataInformation DoubleDataInformation FloatDataInformation SIntDataInformation UIntDataInformation BoolDataInformation FlagDataInformation PrimitiveDataInformation BasicPrimitiveDataInformation EnumDataInformation EnumDefinition ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/datatypes/primitive/bitfield PRIVATE AbstractBitfieldDataInformation BoolBitfieldDataInformation SignedBitfieldDataInformation UnsignedBitfieldDataInformation ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/datatypes/strings PRIVATE StringDataInformation StringData AsciiStringData Latin1StringData Utf8StringData Utf16StringData Utf32StringData EbcdicStringData ) oktetakastencontrollers_add_sublibrary_structures_tested(../../core/codecs PRIVATE Ebcdic1047CharCodec ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/script PRIVATE ScriptEngineInitializer ScriptHandler ScriptHandlerInfo ScriptUtils ScriptLogger ScriptLoggerView SafeReference ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/script/classes PRIVATE DefaultScriptClass ArrayScriptClass PrimitiveScriptClass EnumScriptClass PointerScriptClass BitfieldScriptClass StringScriptClass StructUnionScriptClass ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/parsers PRIVATE AbstractStructureParser OsdParser ScriptFileParser ScriptValueConverter DataInformationFactory ParserUtils ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures/settings KCFG structureviewpreferences.kcfgc ) oktetakastencontrollers_add_sublibrary_structures_tested(view/structures PRIVATE AllPrimitiveTypes StructLogging ) #these source files are not needed by the static library for unit tests, therefore keep them separate oktetakastencontrollers_add_sublibrary(view/structures/settings PRIVATE StructureAddRemoveWidget StructureViewSettingsWidget StructuresManagerView UI structureviewsettingswidget.ui ) oktetakastencontrollers_add_sublibrary(view/structures PUBLIC StructToolView StructuresToolFactory StructuresToolViewFactory PRIVATE StructuresManager StructuresTool StructureTreeModel StructureDefinitionFile # view/structures/modeltest.cpp StructureView StructuresToolView StructureViewItemDelegate ) # structurestool.h cannot be installed as it pulls (too) many private uninstalled headers # KF5 TODO: any tools/controllers and views should be created by the resp. factories # since some time, no more directly. # So on next ABI change depublish tools/controllers & their views # For now keeping all installed, in case someone is using them still/already. # structtoolview.h is not useful, but we keep installing the header just in case someone includes it oktetakastencontrollers_add_sublibrary(${LIBFRAMESPRINT_REL_DIR} PRIVATE AbstractFrameRenderer FramesToPaperPrinter HeaderFooterFrameRenderer ) oktetakastencontrollers_add_sublibrary(view/print PUBLIC PrintController PRIVATE PrintTool PrintJob AbstractColumnFrameRenderer PrintColumnStylist ByteArrayFrameRenderer ) oktetakastencontrollers_add_sublibrary(view/viewconfig PUBLIC ViewConfigController PRIVATE BytesPerLineDialog BytesPerGroupDialog ) oktetakastencontrollers_add_sublibrary(view/viewstatus PUBLIC ViewStatusController ) oktetakastencontrollers_add_sublibrary(view/viewmode PUBLIC ViewModeController ) oktetakastencontrollers_add_sublibrary(view/viewprofiles PUBLIC ViewProfilesManageController # TODO: two controllers in one subdir ViewProfileController PRIVATE ViewProfileEdit ViewProfileEditDialog ViewProfileTableModel ViewProfilesManageDialog ) # create a static library for the unit tests. This means we don't have to compile the sources twice add_library(poddecoder-typeeditors STATIC ${oktetakastencontrollers_typeeditor_LIB_SRCS}) set_target_properties( poddecoder-typeeditors PROPERTIES POSITION_INDEPENDENT_CODE TRUE ) target_link_libraries( poddecoder-typeeditors PUBLIC OktetaGui PRIVATE KF5::Completion ) add_library( structureview-tested-srcs STATIC ${oktetakastencontrollers_structures_tested_LIB_SRCS} ) set_target_properties( structureview-tested-srcs PROPERTIES POSITION_INDEPENDENT_CODE TRUE ) target_link_libraries( structureview-tested-srcs PUBLIC OktetaCore KF5::ConfigGui KF5::I18n KF5::Service Qt5::Script Qt5::Xml Qt5::Widgets PRIVATE KF5::Completion KF5::ConfigWidgets ) if(BUILD_TESTING) #structures view unit tests ecm_add_tests( test/primitivearraytest.cpp test/arraydatainformationtest.cpp test/basicdatainformationtest.cpp test/primitivedatainformationtest.cpp test/scriptclassestest.cpp test/uniondatainformationtest.cpp test/allprimitivetypestest.cpp test/scriptvalueconvertertest.cpp test/osdparsertest.cpp test/commonparsertest.cpp test/jsparsertest.cpp test/customtostringtest.cpp test/locktooffsettest.cpp NAME_PREFIX structures- LINK_LIBRARIES structureview-tested-srcs Qt5::Test poddecoder-typeeditors ) endif() list(APPEND oktetakastencontrollers_LIB_HDRS ${CMAKE_CURRENT_BINARY_DIR}/config-qca2.h ) set(OPTIONAL_PRIVATE) if( Qca-qt5_FOUND ) set(OPTIONAL_PRIVATE qca-qt5) endif() okteta_add_library(Controllers NAMESPACE Okteta Kasten PUBLIC OktetaKastenGui OktetaKastenCore KastenGui KastenCore PRIVATE structureview-tested-srcs poddecoder-typeeditors KF5::NewStuff KF5::I18n KF5::ConfigWidgets KF5::KCMUtils KF5::IconThemes KF5::Completion Qt5::PrintSupport Qt5::Script ${OPTIONAL_PRIVATE} VERSION ${OKTETAKASTENCONTROLLERS_VERSION} SOVERSION ${OKTETAKASTENCONTROLLERS_SO_VERSION} ABIVERSION ${OKTETAKASTEN_ABI_VERSION} ${KASTEN_ABI_VERSION} SOURCES ${oktetakastencontrollers_LIB_SRCS} HEADERS ${oktetakastencontrollers_LIB_HDRS} CCHEADERS ${oktetakastencontrollers_LIB_CCHDRS} NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE REVERSE_NAMESPACE_INCLUDEDIR LOWERCASE_LIB REVERSE_NAMESPACE_LIB NO_TARGET_NAMESPACE ) install( FILES view/structures/kns/okteta-structures.knsrc DESTINATION ${KDE_INSTALL_CONFDIR} ) set( elf_structure_FILES view/structures/examples/okteta/structures/elf/metadata.desktop view/structures/examples/okteta/structures/elf/main.osd ) install( FILES ${elf_structure_FILES} DESTINATION ${KDE_INSTALL_DATADIR}/okteta/structures/elf ) set( png_structure_FILES view/structures/examples/okteta/structures/png/metadata.desktop view/structures/examples/okteta/structures/png/main.osd ) install( FILES ${png_structure_FILES} DESTINATION ${KDE_INSTALL_DATADIR}/okteta/structures/png ) install( FILES view/structures/examples/okteta/structures/uuid.js DESTINATION ${KDE_INSTALL_DATADIR}/okteta/structures/ ) install( FILES view/structures/settings/structureviewpreferences.kcfg DESTINATION ${KDE_INSTALL_KCFGDIR} ) configure_file( view/structures/struct2osd.in ${CMAKE_CURRENT_BINARY_DIR}/struct2osd @ONLY ) install( PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/struct2osd DESTINATION ${KDE_INSTALL_BINDIR} ) install( FILES view/structures/gccxml-to-osd.xsl DESTINATION ${KDE_INSTALL_DATADIR}/okteta/structures/ ) okteta_add_cmakeconfig(Controllers NAMESPACE Okteta Kasten NO_TARGET_NAMESPACE VERSION ${OKTETAKASTENCONTROLLERS_VERSION} # ABIVERSION ${KASTEN_ABI_VERSION} ) if( KASTEN_BUILD_INTERNAL_TEMPLATES ) include_directories( view/libbytearrayfilter/filter view/libbytearraychecksum/algorithm ) okteta_add_sublibrary(ControllersTemplates NAMESPACE Okteta Kasten SUBDIR view/libbytearrayfilter/filter/template PRIVATE Template_ByteArrayFilter Template_ByteArrayFilterParameterSet Template_ByteArrayFilterParameterSetEdit ) okteta_add_sublibrary(ControllersTemplates NAMESPACE Okteta Kasten SUBDIR view/libbytearraychecksum/algorithm/template PRIVATE Template_ByteArrayCheckSumAlgorithm Template_ByteArrayChecksumParameterSet Template_ByteArrayChecksumParameterSetEdit ) add_library( oktetakastencontrollertemplates STATIC ${oktetakastencontrollerstemplates_LIB_SRCS} ) # MSVC needs this target_compile_definitions( oktetakastencontrollertemplates PUBLIC OKTETAKASTENCONTROLLERS_STATIC_DEFINE=1 ) target_link_libraries( oktetakastencontrollertemplates KF5::I18n Qt5::Widgets OktetaCore ) endif() diff --git a/kasten/core/CMakeLists.txt b/kasten/core/CMakeLists.txt index f32b5ba3..87f6c683 100644 --- a/kasten/core/CMakeLists.txt +++ b/kasten/core/CMakeLists.txt @@ -1,72 +1,72 @@ set(OKTETAKASTENCORE_VERSION ${OKTETAKASTEN_LIB_VERSION}) set(OKTETAKASTENCORE_SO_VERSION ${OKTETAKASTEN_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"liboktetakasten\") include_directories( document ) macro(OKTETAKASTENCORE_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Core NAMESPACE Okteta Kasten REVERSE_NAMESPACE_INCLUDEDIR SUBDIR ${_subdir} ${ARGN} ) endmacro() oktetakastencore_add_sublibrary(document PUBLIC ByteArrayDocument ByteArrayDocumentFactory ByteArraySelection ) oktetakastencore_add_sublibrary(io/filesystem PUBLIC ByteArrayRawFileSynchronizer ByteArrayRawFileSynchronizerFactory PRIVATE # io/filesystem/externalbookmarkstorage ByteArrayRawFileLoadThread ByteArrayRawFilereloadThread ByteArrayRawFilewriteThread ByteArrayRawFileLoadJob ByteArrayRawFileConnectjob ByteArrayRawFileWriteJob ByteArrayRawFileReloadJob ByteArrayRawFileWriteToJob ) okteta_add_library(Core NAMESPACE Okteta Kasten PUBLIC KastenCore OktetaCore PRIVATE KF5::I18n KF5::Bookmarks VERSION ${OKTETAKASTENCORE_VERSION} SOVERSION ${OKTETAKASTENCORE_SO_VERSION} ABIVERSION ${OKTETAKASTEN_ABI_VERSION} ${KASTEN_ABI_VERSION} SOURCES ${oktetakastencore_LIB_SRCS} HEADERS ${oktetakastencore_LIB_HDRS} CCHEADERS ${oktetakastencore_LIB_CCHDRS} NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE REVERSE_NAMESPACE_INCLUDEDIR LOWERCASE_LIB REVERSE_NAMESPACE_LIB ) okteta_add_cmakeconfig(Core NAMESPACE Okteta Kasten NO_TARGET_NAMESPACE VERSION ${OKTETAKASTENCORE_VERSION} # ABIVERSION ${KASTEN_ABI_VERSION} ) if(BUILD_TESTING) add_subdirectory(document/tests) add_subdirectory(io/tests) endif() diff --git a/kasten/gui/CMakeLists.txt b/kasten/gui/CMakeLists.txt index 1989089d..2e81d5ab 100644 --- a/kasten/gui/CMakeLists.txt +++ b/kasten/gui/CMakeLists.txt @@ -1,191 +1,191 @@ set(OKTETAKASTENGUI_VERSION ${OKTETAKASTEN_LIB_VERSION}) set(OKTETAKASTENGUI_SO_VERSION ${OKTETAKASTEN_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"liboktetakasten\") include_directories( system io view io/streamencoder liboktetawidgets ) macro(OKTETAKASTENGUI_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Gui NAMESPACE Okteta Kasten REVERSE_NAMESPACE_INCLUDEDIR SUBDIR ${_subdir} ${ARGN} ) endmacro() oktetakastengui_add_sublibrary(liboktetawidgets PUBLIC AddressValidator AddressComboBox ByteArrayComboBox PRIVATE ByteArrayValidator ) oktetakastengui_add_sublibrary(io/streamencoder/values PRIVATE ByteArrayValuesStreamEncoderConfigEditor ByteArrayValuesStreamEncoderConfigEditorFactory ByteArrayValuesStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/base32 PRIVATE ByteArrayBase32StreamEncoderConfigEditor ByteArrayBase32StreamEncoderConfigEditorFactory ByteArrayBase32StreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/uuencoding PRIVATE ByteArrayUuencodingStreamEncoderConfigEditor ByteArrayUuencodingStreamEncoderConfigEditorFactory ByteArrayUuencodingStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/xxencoding PRIVATE ByteArrayXxencodingStreamEncoderConfigEditor ByteArrayXxencodingStreamEncoderConfigEditorFactory ByteArrayXxencodingStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/sourcecode PRIVATE ByteArraySourceCodeStreamEncoderConfigEditor ByteArraySourceCodeStreamEncoderConfigEditorFactory ByteArraySourceCodeStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/srec PRIVATE ByteArraySRecStreamEncoderConfigEditor ByteArraySRecStreamEncoderConfigEditorFactory ByteArraySRecStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/ihex PRIVATE ByteArrayIHexStreamEncoderConfigEditor ByteArrayIHexStreamEncoderConfigEditorFactory ByteArrayIHexStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/viewtext PRIVATE AbstractColumnTextRenderer OffsetColumnTextRenderer BorderColumnTextRenderer AbstractByteArrayColumnTextRenderer ValueByteArrayColumnTextRenderer CharByteArrayColumnTextRenderer ByteArrayrowsColumnTextRenderer ByteArrayViewTextStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/chars PRIVATE ByteArrayCharsStreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/base64 PRIVATE ByteArrayBase64StreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder/base85 PRIVATE ByteArrayBase85StreamEncoder ) oktetakastengui_add_sublibrary(io/streamencoder PUBLIC AbstractByteArrayStreamEncoder PRIVATE ByteArrayTextStreamEncoderPreview ) oktetakastengui_add_sublibrary(io/generator/pattern PRIVATE ByteArrayPatternGeneratorconfigEditor ByteArrayPatternGeneratorconfigEditorFactory ByteArrayPatternGenerator ) oktetakastengui_add_sublibrary(io/generator/randomdata PRIVATE ByteArrayRandomDataGeneratorconfigEditor ByteArrayRandomDataGeneratorconfigEditorFactory ByteArrayRandomDataGenerator ) oktetakastengui_add_sublibrary(io/generator/sequence PRIVATE ByteArraySequenceGenerator ) oktetakastengui_add_sublibrary(io PUBLIC ByteArrayStreamEncoderFactory ByteArrayStreamEncoderConfigEditorFactoryFactory ByteArrayDataGeneratorFactory ByteArrayDataGeneratorConfigEditorFactoryFactory ByteArrayViewProfileSynchronizer ) oktetakastengui_add_sublibrary(view PUBLIC ByteArrayView ByteArrayViewFactory ByteArrayViewProfile PRIVATE ByteArrayJanusview ) oktetakastengui_add_sublibrary(system PUBLIC ByteArrayViewProfileLock ByteArrayViewProfileManager ) okteta_add_sublibrary(Gui NAMESPACE Okteta Kasten REVERSE_NAMESPACE_INCLUDEDIR PUBLIC OktetaKastenGui ) okteta_add_library(Gui NAMESPACE Okteta Kasten PUBLIC OktetaKastenCore KastenGui OktetaGui PRIVATE Qt5::Qml KF5::I18n KF5::Completion VERSION ${OKTETAKASTENGUI_VERSION} SOVERSION ${OKTETAKASTENGUI_SO_VERSION} ABIVERSION ${OKTETAKASTEN_ABI_VERSION} ${KASTEN_ABI_VERSION} SOURCES ${oktetakastengui_LIB_SRCS} HEADERS ${oktetakastengui_LIB_HDRS} CCHEADERS ${oktetakastengui_LIB_CCHDRS} NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE REVERSE_NAMESPACE_INCLUDEDIR LOWERCASE_LIB REVERSE_NAMESPACE_LIB NO_TARGET_NAMESPACE ) okteta_add_cmakeconfig(Gui NAMESPACE Okteta Kasten NO_TARGET_NAMESPACE VERSION ${OKTETAKASTENGUI_VERSION} # ABIVERSION ${KASTEN_ABI_VERSION} ) diff --git a/libs/kasten/controllers/CMakeLists.txt b/libs/kasten/controllers/CMakeLists.txt index 8c24d0d8..c9077484 100644 --- a/libs/kasten/controllers/CMakeLists.txt +++ b/libs/kasten/controllers/CMakeLists.txt @@ -1,191 +1,191 @@ set(KASTENCONTROLLERS_VERSION ${KASTEN_LIB_VERSION}) set(KASTENCONTROLLERS_SO_VERSION ${KASTEN_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"libkasten\") macro(KASTENCONTROLLERS_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Controllers NAMESPACE Kasten SUBDIR ${_subdir} ${ARGN} ) endmacro() kastencontrollers_add_sublibrary(io/synchronize PUBLIC SynchronizeController ) kastencontrollers_add_sublibrary(io/setremote PUBLIC SetRemoteController ) kastencontrollers_add_sublibrary(documentsystem/creator PUBLIC CreatorController ) kastencontrollers_add_sublibrary(documentsystem/loader PUBLIC LoaderController ) kastencontrollers_add_sublibrary(documentsystem/close PUBLIC CloseController ) kastencontrollers_add_sublibrary(documentsystem/filesystembrowser PUBLIC FileSystemBrowserTool FileSystemBrowserToolView PRIVATE FileSystemBrowserView ) kastencontrollers_add_sublibrary(documentsystem/documentsbrowser PUBLIC DocumentsTool DocumentsToolView PRIVATE DocumentsView DocumentListModel ) kastencontrollers_add_sublibrary(document/terminal PUBLIC TerminalTool TerminalToolView PRIVATE TerminalView ) kastencontrollers_add_sublibrary(document/modified PUBLIC ModifiedBarController ) kastencontrollers_add_sublibrary(document/readonly PUBLIC ReadOnlyController # TODO: two plugins in one subdir ReadOnlyBarController ) if(NOT CMAKE_BUILD_TYPE_TOLOWER MATCHES release) kastencontrollers_add_sublibrary(document/versionview PUBLIC VersionViewTool VersionViewToolView PRIVATE VersionTableModel VersionView ) endif() kastencontrollers_add_sublibrary(view/version PUBLIC VersionController ) kastencontrollers_add_sublibrary(view/zoom PUBLIC ZoomController # TODO: two plugins in one subdir ZoomBarController PRIVATE ZoomSlider ) kastencontrollers_add_sublibrary(view/select PUBLIC SelectController ) kastencontrollers_add_sublibrary(io/clipboard PUBLIC ClipboardController ) kastencontrollers_add_sublibrary(io/insert PUBLIC InsertController PRIVATE InsertDialog ) kastencontrollers_add_sublibrary(io/copyas PUBLIC CopyAsController PRIVATE CopyAsDialog ) kastencontrollers_add_sublibrary(io/export PUBLIC ExportController PRIVATE ExportDialog ) # set( CLOSECONTROLLER_SRCS # viewsystem/close/closecontroller.cpp # ) kastencontrollers_add_sublibrary(shellwindow/switchview PUBLIC SwitchViewController ) kastencontrollers_add_sublibrary(shellwindow/viewlistmenu PUBLIC ViewListMenuController ) kastencontrollers_add_sublibrary(shellwindow/viewareasplit PUBLIC ViewAreaSplitController ) kastencontrollers_add_sublibrary(shellwindow/toollistmenu PUBLIC ToolListMenuController ) kastencontrollers_add_sublibrary(shellwindow/fullscreen PUBLIC FullScreenController ) kastencontrollers_add_sublibrary(program/quit PUBLIC QuitController ) okteta_add_library(Controllers NAMESPACE Kasten PUBLIC KastenGui KastenCore PRIVATE KF5::I18n KF5::ConfigWidgets KF5::XmlGui KF5::KIOFileWidgets KF5::Parts VERSION ${KASTENCONTROLLERS_VERSION} SOVERSION ${KASTENCONTROLLERS_SO_VERSION} ABIVERSION ${KASTEN_ABI_VERSION} SOURCES ${kastencontrollers_LIB_SRCS} HEADERS ${kastencontrollers_LIB_HDRS} CCHEADERS ${kastencontrollers_LIB_CCHDRS} NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE LOWERCASE_LIB ) okteta_add_cmakeconfig(Controllers NAMESPACE Kasten NO_TARGET_NAMESPACE VERSION ${KASTENCONTROLLERS_VERSION} # ABIVERSION ${KASTEN_ABI_VERSION} ) diff --git a/libs/kasten/core/CMakeLists.txt b/libs/kasten/core/CMakeLists.txt index e7526b69..e591aa6b 100644 --- a/libs/kasten/core/CMakeLists.txt +++ b/libs/kasten/core/CMakeLists.txt @@ -1,122 +1,122 @@ set(KASTENCORE_VERSION ${KASTEN_LIB_VERSION}) set(KASTENCORE_SO_VERSION ${KASTEN_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"libkasten\") include_directories( entity document io io/filesystem system ) macro(KASTENCORE_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Core NAMESPACE Kasten SUBDIR ${_subdir} ${ARGN} ) endmacro() kastencore_add_sublibrary(entity PUBLIC # AbstractEntity # Group Person ) kastencore_add_sublibrary(document PUBLIC Versionable UserListable AbstractModel AbstractModelSelection AbstractDocument AbstractDocumentFactory AbstractTool AbstractToolFactory DocumentVersionId DocumentVersionData ) kastencore_add_sublibrary(io PUBLIC AbstractSyncToRemoteJob AbstractModelSynchronizer AbstractSyncWithRemoteJob AbstractSyncFromRemoteJob AbstractConnectJob AbstractModelStreamEncoder AbstractModelDataGenerator AbstractExportJob AbstractModelExporter ModelStreamEncodeThread ModelDataGenerateThread AbstractLoadJob AbstractModelSynchronizerFactory ) kastencore_add_sublibrary(io/filesystem PUBLIC AbstractFileSystemSyncWithRemoteJob AbstractFileSystemSyncFromRemoteJob AbstractFileSystemSyncToRemoteJob AbstractModelFileSystemSynchronizer AbstractFileSystemConnectJob AbstractFileSystemLoadJob AbstractFileSystemExportJob ModelEncoderFileSystemExporter ModelEncoderFileSystemExportJob ) kastencore_add_sublibrary(system PUBLIC AbstractOverwriteDialog AbstractSaveDiscardDialog JobManager DocumentManager DocumentCreateManager DocumentSyncManager ModelCodecManager ) okteta_add_sublibrary(Core NAMESPACE Kasten PUBLIC KastenCore ) okteta_add_library(Core NAMESPACE Kasten PUBLIC KF5::KIOCore Qt5::Core Qt5::Gui PRIVATE KF5::I18n KF5::JobWidgets KF5::WidgetsAddons Qt5::Network VERSION ${KASTENCORE_VERSION} SOVERSION ${KASTENCORE_SO_VERSION} ABIVERSION ${KASTEN_ABI_VERSION} SOURCES ${kastencore_LIB_SRCS} HEADERS ${kastencore_LIB_HDRS} CCHEADERS ${kastencore_LIB_CCHDRS} NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE LOWERCASE_LIB ) okteta_add_cmakeconfig(Core NAMESPACE Kasten NO_TARGET_NAMESPACE VERSION ${KASTENCORE_VERSION} # ABIVERSION ${KASTEN_ABI_VERSION} ) if(BUILD_TESTING) add_subdirectory( tests ) endif() diff --git a/libs/kasten/gui/CMakeLists.txt b/libs/kasten/gui/CMakeLists.txt index 684dbd1d..0247eb1c 100644 --- a/libs/kasten/gui/CMakeLists.txt +++ b/libs/kasten/gui/CMakeLists.txt @@ -1,138 +1,138 @@ set(KASTENGUI_VERSION ${KASTEN_LIB_VERSION}) set(KASTENGUI_SO_VERSION ${KASTEN_LIB_SOVERSION}) add_definitions(-DTRANSLATION_DOMAIN=\"libkasten\") include_directories( view io system shell controller ) macro(KASTENGUI_ADD_SUBLIBRARY _subdir) okteta_add_sublibrary(Gui NAMESPACE Kasten SUBDIR ${_subdir} ${ARGN} ) endmacro() kastengui_add_sublibrary(view PUBLIC SelectedDataWriteable DataSelectable Zoomable AbstractView AbstractViewFactory AbstractToolView AbstractToolViewFactory AbstractSelectionView AbstractToolInlineView ) kastengui_add_sublibrary(io/filesystem PUBLIC ModelEncoderFileSystemExporterConfigEditor ModelEncoderFileSystemExporterConfigEditorFactory ) kastengui_add_sublibrary(io PUBLIC AbstractModelStreamEncoderConfigEditor AbstractModelStreamEncoderConfigEditorFactory AbstractModelExporterConfigEditor AbstractModelExporterConfigEditorFactory AbstractModelDataGeneratorConfigEditor AbstractModelDataGeneratorConfigEditorFactory ) kastengui_add_sublibrary(system PUBLIC AbstractDocumentStrategy MultiDocumentStrategy SingleDocumentStrategy DialogHandler DummyView ModelCodecViewManager ViewManager PRIVATE CreateDialog ) kastengui_add_sublibrary(shell PUBLIC ToolInlineViewable WidgetsDockable ViewAreaSplitable AbstractViewArea AbstractGroupedViews SingleViewArea SingleViewWindow MultiViewAreas ShellWindow TabbedViews StatusBar ToolViewDockWidget # remove on next API change, accidentally here StatusBarLayout ToolInlineViewWidget ViewAreaBox ViewBox PRIVATE TabBar TabWidget ) kastengui_add_sublibrary(controller PUBLIC AbstractController AbstractXmlGuiController AbstractLinePopup AbstractToolWidget ToggleButton ) okteta_add_sublibrary(Gui NAMESPACE Kasten PUBLIC KastenGui ) okteta_add_library(Gui NAMESPACE Kasten PUBLIC KastenCore Qt5::Widgets KF5::XmlGui PRIVATE KF5::I18n VERSION ${KASTENGUI_VERSION} SOVERSION ${KASTENGUI_SO_VERSION} ABIVERSION ${KASTEN_ABI_VERSION} SOURCES ${kastengui_LIB_SRCS} HEADERS ${kastengui_LIB_HDRS} CCHEADERS ${kastengui_LIB_CCHDRS} NO_TARGET_NAMESPACE NO_VERSIONED_INCLUDEDIR - NO_PACKAGE_NAMESPACED_INCLUDEDIR + NO_VERSIONED_PACKAGE_NAMESPACE LOWERCASE_LIB ) okteta_add_cmakeconfig(Gui NAMESPACE Kasten NO_TARGET_NAMESPACE VERSION ${KASTENGUI_VERSION} # ABIVERSION ${KASTEN_ABI_VERSION} )