]> git.tdb.fi Git - libs/gui.git/blob - Build
Support for using Quartz to load images on OS X
[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 "sigc++-2.0";
8         if_arch "!windows"
9         {
10                 if_arch "!darwin"
11                 {
12                         require "xlib";
13                 };
14         };
15         if_arch "windows"
16         {
17                 build_info
18                 {
19                         library "gdi32";
20                 };
21         };
22         if_arch "darwin"
23         {
24                 build_info
25                 {
26                         library "CoreFoundation.framework";
27                         library "AppKit.framework";
28                 };
29         };
30
31         feature "devil" "Include DevIL support for loading image files";
32         if_feature "devil"
33         {
34                 require "IL";
35         };
36
37         feature "libpng" "Include libpng support for loading PNG files"
38         {
39                 default "yes";
40         };
41         if_feature "libpng"
42         {
43                 require "libpng";
44         };
45
46         if_arch "darwin"
47         {
48                 feature "quartz" "Include Quartz support for loading image files"
49                 {
50                         default "yes";
51                 };
52                 if_feature "quartz"
53                 {
54                         build_info
55                         {
56                                 library "ApplicationServices.framework";
57                         };
58                 };
59         };
60
61         feature "opengl" "Include support for OpenGL contexts"
62         {
63                 default "yes";
64         };
65         if_feature "opengl"
66         {
67                 require "opengl";
68         };
69
70         if_arch "!windows & !darwin"
71         {
72                 feature "xrandr" "Include support for video mode switching with XRandR";
73                 if_feature "xrandr"
74                 {
75                         require "xrandr";
76                 };
77         };
78
79         library "mspgui"
80         {
81                 source "source/graphics";
82                 source "source/input";
83                 if_feature "libpng"
84                 {
85                         source "source/graphics/png";
86                 };
87                 if_feature "devil"
88                 {
89                         source "source/graphics/devil";
90                 };
91                 if_arch "windows"
92                 {
93                         overlay "windows";
94                         if_feature "opengl"
95                         {
96                                 overlay "wgl";
97                         };
98                 };
99                 if_arch "darwin"
100                 {
101                         if_feature "quartz"
102                         {
103                                 source "source/graphics/quartz";
104                         };
105                         overlay "cocoa";
106                         if_feature "opengl"
107                         {
108                                 overlay "cgl";
109                         };
110                 };
111                 if_arch "!windows & !darwin"
112                 {
113                         overlay "x11";
114                         if_feature "opengl"
115                         {
116                                 overlay "glx";
117                         };
118                 };
119                 install true;
120                 install_map
121                 {
122                         map "source" "include/msp";
123                 };
124         };
125
126         program "ev"
127         {
128                 source "examples/ev.cpp";
129                 build_info
130                 {
131                         library "mspgui";
132                 };
133         };
134
135         source_tarball
136         {
137                 source "License.txt";
138                 source "Changelog.txt";
139         };
140 };