summaryrefslogtreecommitdiffstats
path: root/libmultimc/CMakeLists.txt
blob: 8adee1eca6048ec73726bff22a209963f35db276 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
project(libMultiMC)

set(CMAKE_AUTOMOC ON)

# Find Qt
find_package(Qt5Core REQUIRED)
find_package(Qt5Network REQUIRED)
find_package(Qt5Xml REQUIRED)

# Include Qt headers.
include_directories(${Qt5Base_INCLUDE_DIRS})
include_directories(${Qt5Network_INCLUDE_DIRS})

# Include utility library.
include_directories(${CMAKE_SOURCE_DIR}/libutil/include)

# Include settings library.
include_directories(${CMAKE_SOURCE_DIR}/libsettings/include)

SET(LIBINST_HEADERS
include/libmmc_config.h


# Instance Stuff
include/instance.h
include/instancelist.h
include/instanceloader.h

include/instversion.h
include/instversionlist.h

include/minecraftversion.h
include/minecraftversionlist.h

include/library.h
include/fullversion.h
include/fullversionfactory.h

# Tasks
include/task.h
include/logintask.h
include/gameupdatetask.h


# Login Data
include/userinfo.h
include/loginresponse.h


# Misc Data
include/version.h
include/appsettings.h
include/minecraftprocess.h
include/lwjglversionlist.h
)

SET(LIBINST_SOURCES
# Instance Stuff
src/instance.cpp
src/instancelist.cpp
src/instanceloader.cpp

src/instversion.cpp
src/instversionlist.cpp

src/minecraftversion.cpp
src/minecraftversionlist.cpp

src/library.cpp
src/fullversion.cpp
src/fullversionfactory.cpp

# Tasks
src/task.cpp
src/logintask.cpp
src/gameupdatetask.cpp


# Login Data
src/userinfo.cpp
src/loginresponse.cpp


# Misc Data
src/version.cpp
src/appsettings.cpp
src/minecraftprocess.cpp
src/lwjglversionlist.cpp
)

# Set the include dir path.
SET(LIBMULTIMC_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/include" PARENT_SCOPE)

# Include self.
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
include_directories(${CMAKE_BINARY_DIR}/include)

add_definitions(-DLIBMULTIMC_LIBRARY)

add_library(libMultiMC SHARED ${LIBINST_SOURCES} ${LIBINST_HEADERS})
qt5_use_modules(libMultiMC Core Network Xml)
target_link_libraries(libMultiMC libUtil libSettings)