]> git.tdb.fi Git - libs/gui.git/blob - Build
Add dependency to mspdatafile
[libs/gui.git] / Build
1 package "mspgui"
2 {
3         version "1.1";
4         description "Base graphics and input library";
5
6         require "mspcore";
7         require "mspdatafile";
8         require "sigc++-2.0";
9         if_arch "!windows & !darwin & !android"
10         {
11                 require "xlib";
12         };
13         if_arch "windows"
14         {
15                 build_info
16                 {
17                         library "gdi32";
18                         library "xinput";
19                 };
20         };
21         if_arch "darwin"
22         {
23                 build_info
24                 {
25                         library "CoreFoundation.framework";
26                         library "AppKit.framework";
27                 };
28         };
29
30         feature "devil" "Include DevIL support for loading image files";
31         if_feature "devil"
32         {
33                 require "IL";
34         };
35
36         feature "libpng" "Include libpng support for loading PNG files"
37         {
38                 default "yes";
39         };
40         if_feature "libpng"
41         {
42                 require "libpng";
43         };
44
45         feature "libjpeg" "Include libjpeg support for loading JPEG files"
46         {
47                 default "yes";
48         };
49         if_feature "libjpeg"
50         {
51                 build_info
52                 {
53                         library "jpeg";
54                 };
55         };
56
57         if_arch "darwin"
58         {
59                 feature "quartz" "Include Quartz support for loading image files"
60                 {
61                         default "yes";
62                 };
63                 if_feature "quartz"
64                 {
65                         build_info
66                         {
67                                 library "ApplicationServices.framework";
68                         };
69                 };
70         };
71
72         feature "opengl" "Include support for OpenGL contexts"
73         {
74                 default "yes";
75         };
76         if_feature "opengl"
77         {
78                 if_arch "android"
79                 {
80                         require "opengles";
81                 };
82                 if_arch "!android"
83                 {
84                         require "opengl";
85                 };
86         };
87
88         feature "vulkan" "Include support for Vulkan contexts"
89         {
90                 default "no";
91         };
92         if_feature "vulkan"
93         {
94                 require "vulkan";
95         };
96
97         if_arch "!windows & !darwin & !android"
98         {
99                 feature "xrandr" "Include support for video mode switching with XRandR"
100                 {
101                         export true;
102                 };
103                 if_feature "xrandr"
104                 {
105                         require "xrandr";
106                 };
107         };
108
109         library "mspgui"
110         {
111                 source "source/graphics";
112                 source "source/input";
113                 if_feature "libpng"
114                 {
115                         source "source/graphics/png";
116                 };
117                 if_feature "libjpeg"
118                 {
119                         source "source/graphics/jpeg";
120                 };
121                 if_feature "devil"
122                 {
123                         source "source/graphics/devil";
124                 };
125                 if_arch "linux"
126                 {
127                         overlay "linux";
128                 };
129                 if_arch "windows"
130                 {
131                         overlay "windows";
132                         if_feature "opengl"
133                         {
134                                 overlay "wgl";
135                         };
136                 };
137                 if_arch "darwin"
138                 {
139                         if_feature "quartz"
140                         {
141                                 source "source/graphics/quartz";
142                         };
143                         overlay "cocoa";
144                         if_feature "opengl"
145                         {
146                                 overlay "cgl";
147                         };
148                         build_info
149                         {
150                                 standard CC "c99";
151                         };
152                 };
153                 if_arch "android"
154                 {
155                         overlay "android";
156                         if_feature "opengl"
157                         {
158                                 overlay "egl_android";
159                         };
160                 };
161                 if_arch "!windows & !darwin & !android"
162                 {
163                         overlay "x11";
164                         if_feature "opengl"
165                         {
166                                 overlay "glx";
167                         };
168                         if_feature "vulkan"
169                         {
170                                 overlay "vkxlib";
171                         };
172                 };
173                 overlay "generic";
174                 install true;
175                 install_map
176                 {
177                         map "source" "include/msp";
178                 };
179         };
180
181         program "ev"
182         {
183                 source "examples/ev.cpp";
184                 use "mspgui";
185         };
186
187         source_tarball
188         {
189                 source "License.txt";
190                 source "Changelog.txt";
191         };
192 };