diff --git a/CMakeLists.txt b/CMakeLists.txt index 89fde5e..8b87926 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,8 +1,14 @@ cmake_minimum_required (VERSION 2.8) +############################################################################### +# Top-Level gLabels project +############################################################################### project (glabels_qt) +#======================================= +# Package and Version Information +#======================================= set (Package_Name "glabels-qt") set (Short_Name "glabels-qt") set (Package_URL "https://github.com/jimevins/glabels-qt") @@ -15,6 +21,10 @@ set (Package_Version "${Major_Version}.${Minor_Version}.${Bugfix_Version}") set (Unique_Package_Name ${Package_Name}-${API_Version}) + +#======================================= +# Dependencies +#======================================= if (WIN32) # Make sure we can find MINGW libraries, e.g. zlib set (CMAKE_PREFIX_PATH C:/MinGW ) @@ -23,13 +33,18 @@ endif () find_package(Qt4 4.8.4 REQUIRED QtCore QtGui QtXml) find_package(ZLIB REQUIRED) +include (${QT_USE_FILE}) + +#======================================= +# Compilation +#======================================= add_definitions (-std=c++11 -g) -# +#======================================= # Subdirectories -# +#======================================= add_subdirectory (glabels) add_subdirectory (libglabels) diff --git a/glabels/CMakeLists.txt b/glabels/CMakeLists.txt index d506080..8799de3 100644 --- a/glabels/CMakeLists.txt +++ b/glabels/CMakeLists.txt @@ -1,7 +1,14 @@ cmake_minimum_required (VERSION 2.8) +############################################################################### +# gLabels application subproject +############################################################################### project (app CXX) + +#======================================= +# Sources +#======================================= set (glabels_sources glabels_main.cpp AboutDialog.cpp @@ -32,13 +39,7 @@ set (glabels_sources LabelModelShapeObject.cpp LabelRegion.cpp MainWindow.cpp - Merge.cpp - MergeFactory.cpp MergeView.cpp - MergeRecord.cpp - MergeNone.cpp - MergeText.cpp - MergeTextCsv.cpp ObjectEditor.cpp Outline.cpp PageRenderer.cpp @@ -79,7 +80,6 @@ set (glabels_qobject_headers LabelModelBoxObject.h LabelModelShapeObject.h MainWindow.h - Merge.h MergeView.h ObjectEditor.h PreferencesDialog.h @@ -115,9 +115,24 @@ qt4_wrap_cpp (glabels_moc_sources ${glabels_qobject_headers}) qt4_wrap_ui (glabels_forms_headers ${glabels_forms}) qt4_add_resources (glabels_qrc_sources ${glabels_resource_files}) -include (${QT_USE_FILE}) +add_executable (glabels-qt + ${glabels_sources} + ${glabels_moc_sources} + ${glabels_qrc_sources} + ${glabels_forms_headers} +) + +target_link_libraries (glabels-qt + Merge + libglabels + ${QT_LIBRARIES} + ${ZLIB_LIBRARIES} +) +#======================================= +# Where to find stuff +#======================================= include_directories ( ${ZLIB_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR} @@ -129,13 +144,14 @@ link_directories ( ${glabels_qt_SOURCE_DIR}/libglabels ) -add_executable (glabels-qt ${glabels_sources} ${glabels_moc_sources} ${glabels_qrc_sources} ${glabels_forms_headers}) -target_link_libraries (glabels-qt - libglabels - ${QT_LIBRARIES} - ${ZLIB_LIBRARIES} -) +#======================================= +# Subdirectories +#======================================= +add_subdirectory (Merge) +#======================================= +# Install +#======================================= install (TARGETS glabels-qt RUNTIME DESTINATION bin) diff --git a/glabels/ColorNode.cpp b/glabels/ColorNode.cpp index 45993bf..852f833 100644 --- a/glabels/ColorNode.cpp +++ b/glabels/ColorNode.cpp @@ -20,7 +20,7 @@ #include "ColorNode.h" -#include "MergeRecord.h" +#include "Merge/MergeRecord.h" /// diff --git a/glabels/LabelModel.cpp b/glabels/LabelModel.cpp index 58cdea5..03d5500 100644 --- a/glabels/LabelModel.cpp +++ b/glabels/LabelModel.cpp @@ -28,7 +28,9 @@ #include #include -#include "MergeNone.h" +#include "Merge/Merge.h" +#include "Merge/MergeNone.h" +#include "Merge/MergeRecord.h" #include "LabelModelObject.h" #include "LabelRegion.h" #include "XmlLabelCreator.h" diff --git a/glabels/LabelModel.h b/glabels/LabelModel.h index b48d488..b91e779 100644 --- a/glabels/LabelModel.h +++ b/glabels/LabelModel.h @@ -25,8 +25,6 @@ #include #include -#include "Merge.h" -#include "MergeRecord.h" #include "libglabels/Template.h" #include "Settings.h" @@ -35,6 +33,8 @@ class LabelModelObject; class Handle; class LabelRegion; +class Merge; +class MergeRecord; class ColorNode; diff --git a/glabels/LabelModelObject.cpp b/glabels/LabelModelObject.cpp index 3f1cc31..08772b7 100644 --- a/glabels/LabelModelObject.cpp +++ b/glabels/LabelModelObject.cpp @@ -29,7 +29,7 @@ #include "TextNode.h" #include "BarcodeStyle.h" #include "LabelRegion.h" -#include "MergeRecord.h" +#include "Merge/MergeRecord.h" /// diff --git a/glabels/Merge/CMakeLists.txt b/glabels/Merge/CMakeLists.txt new file mode 100644 index 0000000..9c536e0 --- /dev/null +++ b/glabels/Merge/CMakeLists.txt @@ -0,0 +1,60 @@ +cmake_minimum_required (VERSION 2.8) + +############################################################################### +# gLabels Merge subsystem +############################################################################### +project (Merge CXX) + + +#======================================= +# Sources +#======================================= +set (merge_sources + Merge.cpp + MergeFactory.cpp + MergeRecord.cpp + MergeNone.cpp + MergeText.cpp + MergeTextCsv.cpp +) + +set (merge_qobject_headers + Merge.h +) + +set (merge_forms +) + +set (merge_resource_files +) + +qt4_wrap_cpp (merge_moc_sources ${merge_qobject_headers}) +qt4_wrap_ui (merge_forms_headers ${merge_forms}) +qt4_add_resources (merge_qrc_sources ${merge_resource_files}) + +add_library (Merge STATIC + ${merge_sources} + ${merge_moc_sources} + ${merge_qrc_sources} + ${merge_forms_headers} +) + + +#======================================= +# Where to find stuff +#======================================= +include_directories ( +) + +link_directories ( +) + + +#======================================= +# Subdirectories +#======================================= + + +#======================================= +# Install +#======================================= diff --git a/glabels/Merge.cpp b/glabels/Merge/Merge.cpp similarity index 100% rename from glabels/Merge.cpp rename to glabels/Merge/Merge.cpp diff --git a/glabels/Merge.h b/glabels/Merge/Merge.h similarity index 100% rename from glabels/Merge.h rename to glabels/Merge/Merge.h diff --git a/glabels/MergeFactory.cpp b/glabels/Merge/MergeFactory.cpp similarity index 100% rename from glabels/MergeFactory.cpp rename to glabels/Merge/MergeFactory.cpp diff --git a/glabels/MergeFactory.h b/glabels/Merge/MergeFactory.h similarity index 100% rename from glabels/MergeFactory.h rename to glabels/Merge/MergeFactory.h diff --git a/glabels/MergeNone.cpp b/glabels/Merge/MergeNone.cpp similarity index 100% rename from glabels/MergeNone.cpp rename to glabels/Merge/MergeNone.cpp diff --git a/glabels/MergeNone.h b/glabels/Merge/MergeNone.h similarity index 100% rename from glabels/MergeNone.h rename to glabels/Merge/MergeNone.h diff --git a/glabels/MergeRecord.cpp b/glabels/Merge/MergeRecord.cpp similarity index 100% rename from glabels/MergeRecord.cpp rename to glabels/Merge/MergeRecord.cpp diff --git a/glabels/MergeRecord.h b/glabels/Merge/MergeRecord.h similarity index 100% rename from glabels/MergeRecord.h rename to glabels/Merge/MergeRecord.h diff --git a/glabels/MergeText.cpp b/glabels/Merge/MergeText.cpp similarity index 100% rename from glabels/MergeText.cpp rename to glabels/Merge/MergeText.cpp diff --git a/glabels/MergeText.h b/glabels/Merge/MergeText.h similarity index 100% rename from glabels/MergeText.h rename to glabels/Merge/MergeText.h diff --git a/glabels/MergeTextCsv.cpp b/glabels/Merge/MergeTextCsv.cpp similarity index 100% rename from glabels/MergeTextCsv.cpp rename to glabels/Merge/MergeTextCsv.cpp diff --git a/glabels/MergeTextCsv.h b/glabels/Merge/MergeTextCsv.h similarity index 100% rename from glabels/MergeTextCsv.h rename to glabels/Merge/MergeTextCsv.h diff --git a/glabels/MergeView.cpp b/glabels/MergeView.cpp index 9891ee6..1e76bc9 100644 --- a/glabels/MergeView.cpp +++ b/glabels/MergeView.cpp @@ -21,7 +21,7 @@ #include "MergeView.h" #include "LabelModel.h" -#include "MergeFactory.h" +#include "Merge/MergeFactory.h" #include #include #include diff --git a/glabels/ObjectEditor.cpp b/glabels/ObjectEditor.cpp index 790c297..c921cf5 100644 --- a/glabels/ObjectEditor.cpp +++ b/glabels/ObjectEditor.cpp @@ -26,6 +26,8 @@ #include "LabelModelBoxObject.h" #include "UndoRedoModel.h" +#include "Merge/Merge.h" + #include "Settings.h" #include diff --git a/glabels/PageRenderer.cpp b/glabels/PageRenderer.cpp index 63722f3..78a44ec 100644 --- a/glabels/PageRenderer.cpp +++ b/glabels/PageRenderer.cpp @@ -21,9 +21,9 @@ #include "PageRenderer.h" #include "LabelModel.h" -#include "Merge.h" -#include "MergeNone.h" -#include "MergeRecord.h" +#include "Merge/Merge.h" +#include "Merge/MergeNone.h" +#include "Merge/MergeRecord.h" #include #include diff --git a/glabels/XmlLabelCreator.cpp b/glabels/XmlLabelCreator.cpp index 0c4282a..f0474d1 100644 --- a/glabels/XmlLabelCreator.cpp +++ b/glabels/XmlLabelCreator.cpp @@ -27,7 +27,7 @@ //#include "LabelObjectLine.h" //#include "LabelObjectImage.h" //#include "LabelObjectBarcode.h" -#include "MergeNone.h" +#include "Merge/MergeNone.h" #include "libglabels/XmlTemplateCreator.h" #include "libglabels/XmlUtil.h" diff --git a/glabels/XmlLabelParser.cpp b/glabels/XmlLabelParser.cpp index 8f43c30..3e9e99e 100644 --- a/glabels/XmlLabelParser.cpp +++ b/glabels/XmlLabelParser.cpp @@ -27,7 +27,7 @@ //#include "LabelObjectLine.h" //#include "LabelObjectImage.h" //#include "LabelObjectBarcode.h" -#include "MergeFactory.h" +#include "Merge/MergeFactory.h" #include "libglabels/XmlTemplateParser.h" #include "libglabels/XmlUtil.h" diff --git a/glabels/glabels_main.cpp b/glabels/glabels_main.cpp index 949e425..52a2172 100644 --- a/glabels/glabels_main.cpp +++ b/glabels/glabels_main.cpp @@ -22,8 +22,8 @@ #include #include "libglabels/Db.h" +#include "Merge/MergeFactory.h" #include "Settings.h" -#include "MergeFactory.h" #include "MainWindow.h" diff --git a/libglabels/CMakeLists.txt b/libglabels/CMakeLists.txt index 6473b92..fa49f8b 100644 --- a/libglabels/CMakeLists.txt +++ b/libglabels/CMakeLists.txt @@ -1,7 +1,14 @@ cmake_minimum_required (VERSION 2.8) +############################################################################### +# gLabels libglabels subproject +############################################################################### project (libglabels CXX) + +#======================================= +# Sources +#======================================= configure_file (Config.h.in ${CMAKE_CURRENT_BINARY_DIR}/Config.h @ONLY) set (libglabels_sources @@ -39,9 +46,16 @@ set (libglabels_resource_files qt4_wrap_cpp (libglabels_moc_sources ${libglabels_qobject_headers}) qt4_add_resources(libglabels_qrc_sources ${libglabels_resource_files}) -include (${QT_USE_FILE}) +add_library (libglabels + ${libglabels_sources} + ${libglabels_moc_sources} + ${libglabels_qrc_sources} +) +#======================================= +# Where to find stuff +#======================================= include_directories ( ${CMAKE_CURRENT_BINARY_DIR} ) @@ -49,6 +63,8 @@ include_directories ( link_directories ( ) -add_library (libglabels ${libglabels_sources} ${libglabels_moc_sources} ${libglabels_qrc_sources}) +#======================================= +# Install +#======================================= install (TARGETS libglabels ARCHIVE DESTINATION lib)