comparison CMakeLists.txt @ 64:fe719c109dbc

*: update 1. add media tracking ability, and it displays info on the `now playing` page 2. the `now playing` page now actually shows something 3. renamed every page class to be more accurate to what it is 4. ...
author Paper <mrpapersonic@gmail.com>
date Sun, 01 Oct 2023 23:15:43 -0400
parents 3d2decf093bb
children 6481c5aed3e1
comparison
equal deleted inserted replaced
63:3d2decf093bb 64:fe719c109dbc
5 # the host system, for cross-compiling purposes 5 # the host system, for cross-compiling purposes
6 if(APPLE) 6 if(APPLE)
7 enable_language(OBJCXX) 7 enable_language(OBJCXX)
8 endif() 8 endif()
9 9
10 set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
11 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
12 set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}")
13
14 option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
15 option(USE_QT6 "Build with Qt 6 instead of Qt 5" OFF)
16
10 add_subdirectory(dep/anitomy) 17 add_subdirectory(dep/anitomy)
11 # add_subdirectory(dep/animia) 18 add_subdirectory(dep/animia)
12 add_subdirectory(dep/pugixml) 19 add_subdirectory(dep/pugixml)
13 20
14 # Fix for mingw64 21 # Fix for mingw64
15 list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a") 22 list(APPEND CMAKE_FIND_LIBRARY_SUFFIXES ".dll.a" ".a")
16 23
22 find_package(CURL REQUIRED) 29 find_package(CURL REQUIRED)
23 30
24 set(LIBRARIES 31 set(LIBRARIES
25 ${CURL_LIBRARIES} 32 ${CURL_LIBRARIES}
26 anitomy 33 anitomy
34 animia
27 ) 35 )
28 36
29 if(USE_QT6) 37 if(USE_QT6)
30 list(APPEND LIBRARIES ${Qt6Widgets_LIBRARIES}) 38 list(APPEND LIBRARIES ${Qt6Widgets_LIBRARIES})
31 else() 39 else()
65 src/gui/pages/torrents.cpp 73 src/gui/pages/torrents.cpp
66 src/gui/pages/history.cpp 74 src/gui/pages/history.cpp
67 75
68 76
69 # Custom widgets 77 # Custom widgets
78 src/gui/widgets/anime_info.cpp
70 src/gui/widgets/sidebar.cpp 79 src/gui/widgets/sidebar.cpp
71 src/gui/widgets/text.cpp 80 src/gui/widgets/text.cpp
72 src/gui/widgets/optional_date.cpp 81 src/gui/widgets/optional_date.cpp
73 82
74 # Dialogs 83 # Dialogs
83 src/gui/translate/anilist.cpp 92 src/gui/translate/anilist.cpp
84 93
85 # Services (only AniList for now) 94 # Services (only AniList for now)
86 src/services/services.cpp 95 src/services/services.cpp
87 src/services/anilist.cpp 96 src/services/anilist.cpp
97
98 # Tracking
99 src/track/media.cpp
88 100
89 # Qt resources 101 # Qt resources
90 rc/icons.qrc 102 rc/icons.qrc
91 dep/darkstyle/darkstyle.qrc 103 dep/darkstyle/darkstyle.qrc
92 ) 104 )
103 add_executable(minori ${SRC_FILES}) 115 add_executable(minori ${SRC_FILES})
104 set_property(TARGET minori PROPERTY CXX_STANDARD 11) 116 set_property(TARGET minori PROPERTY CXX_STANDARD 11)
105 set_property(TARGET minori PROPERTY AUTOMOC ON) 117 set_property(TARGET minori PROPERTY AUTOMOC ON)
106 set_property(TARGET minori PROPERTY AUTORCC ON) 118 set_property(TARGET minori PROPERTY AUTORCC ON)
107 119
108 target_include_directories(minori PUBLIC ${CURL_INCLUDE_DIRS} PRIVATE include dep/pugixml/src dep/animia/include) 120 target_include_directories(minori PUBLIC ${CURL_INCLUDE_DIRS} PRIVATE include dep/pugixml/src dep/animia/include dep/anitomy)
109 if(USE_QT6) 121 if(USE_QT6)
110 target_include_directories(minori PUBLIC ${Qt6Widgets_INCLUDE_DIRS}) 122 target_include_directories(minori PUBLIC ${Qt6Widgets_INCLUDE_DIRS})
111 else() 123 else()
112 target_include_directories(minori PUBLIC ${Qt5Widgets_INCLUDE_DIRS}) 124 target_include_directories(minori PUBLIC ${Qt5Widgets_INCLUDE_DIRS})
113 endif() 125 endif()
114 target_compile_options(minori PRIVATE -Wall -Wpedantic -Wextra -Wsuggest-override) 126 target_compile_options(minori PRIVATE -Wall -Wpedantic -Wextra -Wsuggest-override -Wold-style-cast)
115 if(APPLE) 127 if(APPLE)
116 target_compile_definitions(minori PUBLIC MACOSX) 128 target_compile_definitions(minori PUBLIC MACOSX)
117 elseif(WIN32) 129 elseif(WIN32)
118 target_compile_definitions(minori PUBLIC WIN32) 130 target_compile_definitions(minori PUBLIC WIN32)
119 endif() 131 endif()