1- cmake_minimum_required (VERSION 3.20 )
1+ cmake_minimum_required (VERSION 3.25 )
22
33set (name ruisapp)
44project (${name} )
@@ -10,6 +10,22 @@ find_package(myci CONFIG REQUIRED)
1010find_package (JPEG REQUIRED )
1111find_package (GLEW REQUIRED )
1212
13+ if (LINUX )
14+ find_package (PkgConfig REQUIRED )
15+ pkg_check_modules (GDK3 REQUIRED IMPORTED_TARGET "gdk-3.0" )
16+ pkg_check_modules (X11 REQUIRED IMPORTED_TARGET "x11" )
17+ pkg_check_modules (EGL REQUIRED IMPORTED_TARGET "egl" )
18+ pkg_check_modules (GLES2 REQUIRED IMPORTED_TARGET "glesv2" )
19+ set (linux_deps
20+ PkgConfig::GDK3
21+ PkgConfig::X11
22+ PkgConfig::EGL
23+ PkgConfig::GLES2
24+ )
25+ else ()
26+ set (linux_deps)
27+ endif ()
28+
1329set (srcs)
1430myci_add_source_files (srcs
1531 DIRECTORY
@@ -24,6 +40,8 @@ myci_declare_library(${name}-opengl
2440 ../../src
2541 INSTALL_INCLUDE_DIRECTORIES
2642 ../../src/${name}
43+ PUBLIC_COMPILE_DEFINITIONS
44+ "RUISAPP_RENDER_OPENGL"
2745 DEPENDENCIES
2846 rasterimage
2947 r4
@@ -42,4 +60,69 @@ myci_declare_library(${name}-opengl
4260 EXTERNAL_DEPENDENCIES
4361 JPEG::JPEG
4462 GLEW::GLEW
63+ ${linux_deps}
64+ )
65+
66+ myci_declare_library (${name} -opengles
67+ SOURCES
68+ ${srcs}
69+ PUBLIC_INCLUDE_DIRECTORIES
70+ ../../src
71+ INSTALL_INCLUDE_DIRECTORIES
72+ ../../src/${name}
73+ PUBLIC_COMPILE_DEFINITIONS
74+ "RUISAPP_RENDER_OPENGLES"
75+ DEPENDENCIES
76+ rasterimage
77+ r4
78+ papki
79+ tml
80+ utki
81+ agg
82+ veg
83+ mikroxml
84+ cssom
85+ svgdom
86+ svgren
87+ ruis
88+ ruis-render-opengles
89+ Freetype
90+ EXTERNAL_DEPENDENCIES
91+ JPEG::JPEG
92+ ${linux_deps}
93+ )
94+
95+ set (app_srcs)
96+ myci_add_source_files (app_srcs
97+ DIRECTORY
98+ ../../tests/app/src
99+ RECURSIVE
100+ )
101+
102+ set (app_rsrs)
103+ # TODO:
104+ # add_resource_directory(app_rsrs
105+ # "${CMAKE_CURRENT_SOURCE_DIR}/../../tests/app/res"
106+ # )
107+
108+ myci_declare_application (${name} -opengl-test
109+ SOURCES
110+ ${app_srcs}
111+ ${app_rsrs}
112+ DEPENDENCIES
113+ ruis
114+ nitki
115+ LINK_LIBRARIES
116+ ruisapp-opengl
117+ )
118+
119+ myci_declare_application (${name} -opengles-test
120+ SOURCES
121+ ${app_srcs}
122+ ${app_rsrs}
123+ DEPENDENCIES
124+ ruis
125+ nitki
126+ LINK_LIBRARIES
127+ ruisapp-opengles
45128)
0 commit comments