Skip to content
Snippets Groups Projects
CMakeLists.txt 5.65 KiB
Newer Older

# Find the Qt libraries
find_package(Qt5Core REQUIRED)
find_package(Qt5Gui REQUIRED)
find_package(Qt5Widgets REQUIRED)
find_package(Qt5LinguistTools REQUIRED)
find_package(Qt5Script REQUIRED)
find_package(Qt5Xml REQUIRED)

# Find RandomLib, which must be built and installed before running this compilation
find_package(RandomLib 1.7 REQUIRED)
if(RandomLib_FOUND)
	include_directories(${RandomLib_INCLUDE_DIRS})
	message(FATAL_ERROR "Unable to find Random library. Please clone, compile and install it before compiling eiimage.")

set(eiimage_SOURCES
	main.cpp
	Tools.h
	Algorithms/ClassAnalysis.cpp
	Algorithms/ClassAnalysis.cpp
	Algorithms/ClassAnalysis.h
	Algorithms/Croissance.cpp
	Algorithms/Croissance.cpp
	Algorithms/Croissance.h
	Algorithms/DCT.cpp
	Algorithms/DCT.cpp
	Algorithms/DCT.h
	Algorithms/FFT.cpp
	Algorithms/FFT.cpp
	Algorithms/FFT.h
	Algorithms/Pyramid.cpp
	Algorithms/Pyramid.cpp
	Algorithms/Pyramid.h
	Operations/BFlitOp.cpp
	Operations/BFlitOp.h
	Operations/CenterOp.cpp
	Operations/CenterOp.h
	Operations/ClassAnalysisDialog.cpp
	Operations/ClassAnalysisDialog.h
	Operations/ClassAnalysisOp.cpp
	Operations/ClassAnalysisOp.h
	Operations/ClassResultOp.cpp
	Operations/ClassResultOp.h
	Operations/ColorDialog.cpp
	Operations/ColorDialog.h
	Operations/ColorimetryOp.cpp
	Operations/ColorimetryOp.h
	Operations/CombineColorOp.cpp
	Operations/CombineColorOp.h
	Operations/CroissanceOp.cpp
	Operations/CroissanceOp.h
	Operations/DCTDialog.cpp
	Operations/DCTDialog.h
	Operations/DCTOp.cpp
	Operations/DCTOp.h
	Operations/DMMDialog.cpp
	Operations/DMMDialog.h
	Operations/DMMOp.cpp
	Operations/DMMOp.h
	Operations/EntropyOp.cpp
	Operations/EntropyOp.h
	Operations/FFTDialog.cpp
	Operations/FFTDialog.h
	Operations/FFTOp.cpp
	Operations/FFTOp.h
	Operations/FlipOp.cpp
	Operations/FlipOp.h
	Operations/HadamardOp.cpp
	Operations/HadamardOp.h
	Operations/HistogramOp.cpp
	Operations/HistogramOp.h
	Operations/HoughDialog.cpp
	Operations/HoughDialog.cpp
	Operations/HoughDialog.h
	Operations/HoughOp.cpp
	Operations/HoughOp.cpp
	Operations/HoughOp.h
	Operations/Huffman.cpp
	Operations/Huffman.h
	Operations/HuffmanOp.cpp
	Operations/HuffmanOp.h
	Operations/IFFTOp.cpp
	Operations/IFFTOp.h
	Operations/InverseHoughDialog.cpp
	Operations/InverseHoughDialog.cpp
	Operations/InverseHoughDialog.h
	Operations/InverseHoughOp.cpp
	Operations/InverseHoughOp.cpp
	Operations/InverseHoughOp.h
	Operations/InversePyramidDialog.cpp
	Operations/InversePyramidDialog.h
	Operations/InversePyramidOp.cpp
	Operations/InversePyramidOp.h
	Operations/MeanSquaredErrorOp.cpp
	Operations/MeanSquaredErrorOp.h
	Operations/MICD.cpp
	Operations/MICD.h
	Operations/MICDDialog.cpp
	Operations/MICDDialog.h
	Operations/MICDEncodingOp.cpp
	Operations/MICDEncodingOp.h
	Operations/NoiseOp.cpp
	Operations/NoiseOp.h
	Operations/PointOp.cpp
	Operations/PointOp.h
	Operations/PseudoColorOp.cpp
	Operations/PseudoColorOp.h
	Operations/PyramidDialog.cpp
	Operations/PyramidDialog.h
	Operations/PyramidOp.cpp
	Operations/PyramidOp.h
	Operations/Quantification.cpp
	Operations/Quantification.h
	Operations/QuantificationDialog.cpp
	Operations/QuantificationDialog.h
	Operations/QuantificationOp.cpp
	Operations/QuantificationOp.h
	Operations/QuantificationWidget.cpp
	Operations/QuantificationWidget.h
	Operations/RandomImgOp.cpp
	Operations/RandomImgOp.h
	Operations/RejectionRingOp.cpp
	Operations/RejectionRingOp.h
	Operations/RotateOp.cpp
	Operations/RotateOp.h
	Operations/ScalingOp.cpp
	Operations/ScalingOp.h
	Operations/SeparatorOp.cpp
	Operations/SeparatorOp.h
	Operations/SignalToNoiseOp.cpp
	Operations/SignalToNoiseOp.h
	Operations/SinusSynthesisOp.cpp
	Operations/SinusSynthesisOp.cpp
	Operations/SinusSynthesisOp.h
	Operations/SplitColorOp.cpp
	Operations/SplitColorOp.h
	Operations/ThresholdDialog.cpp
	Operations/ThresholdDialog.cpp
	Operations/ThresholdDialog.h
	Operations/ThresholdOp.cpp
	Operations/ThresholdOp.cpp
	Operations/ThresholdOp.h
	Operations/Transforms.cpp
	Operations/Transforms.h
	Operations/TranslateOp.cpp
	Operations/TranslateOp.h
	Operations/ZeroCrossingOp.cpp
	Operations/ZeroCrossingOp.h
	Services/EIImageService.cpp
	Services/EIImageService.h
	Services/FilteringService.cpp
	Services/FilteringService.h
	Services/MorphoMatService.cpp
	Services/MorphoMatService.cpp
	Services/MorphoMatService.h
	Services/OperationService.cpp
	Services/OperationService.h
	Services/OpSetService.cpp
	Services/OpSetService.h
	Services/PluginManager.cpp
	Services/PluginManager.h
	Widgets/FilterChoice.cpp
	Widgets/FilterChoice.cpp
	Widgets/FilterChoice.h
	Widgets/FilterEditor.cpp
	Widgets/FilterEditor.h
	Widgets/FilterEditorItem.cpp
	Widgets/FilterEditorItem.h
	Widgets/ImageZoneSelector.cpp
	Widgets/ImageZoneSelector.h
	Widgets/OperationBar.cpp
	Widgets/OperationBar.h
	Widgets/StructElemViewer.cpp
	Widgets/StructElemViewer.h
	Widgets/StructElemWindow.cpp
	Widgets/StructElemWindow.h
	Operations/HoughDialog.ui
	Operations/InverseHoughDialog.ui
	Operations/FFTDialog.ui
	Operations/ClassAnalysisDialog.ui
	Operations/InversePyramidDialog.ui
	Operations/PyramidDialog.ui
	Operations/MICDDialog.ui
	Operations/DCTDialog.ui
	Operations/ColorDialog.ui
	Operations/MICDDialog_.ui
)

qt5_wrap_ui(WRAPPED_UIS ${UIS})

set(TS_FILES eiimage_en.ts eiimage_fr.ts)
# Uncommento only 1 of the 2 folowing commands, depending on your needs
# -1- Use current translations files
qt5_add_translation(QM_FILES ${TS_FILES})
# -2- Update translations files with changes from c++ sources
# qt5_create_translation(QM_FILES ${eiimage_SOURCES} ${TS_FILES})

add_executable(eiimage ${eiimage_SOURCES} ${WRAPPED_UIS} ${UIS} ${TS_FILES})
target_link_libraries(eiimage
	Qt5::Core
	Qt5::Widgets
	Qt5::Gui
	Qt5::Script
	Qt5::Xml
	${RandomLib_LIBRARIES}