-/* $Id$ */
-
-package "mspgbase"
+package "mspgui"
{
- description "Mikkosoft Productions graphics base library";
- version "0.0";
+ version "1.1";
+ description "Base graphics and input library";
require "mspcore";
require "sigc++-2.0";
- // The OpenGL stuff is hackish, but only way to do it right now
- if "arch!=win32"
+ if_arch "!windows & !darwin & !android"
{
require "xlib";
- require "opengl";
+ };
+ if_arch "windows"
+ {
build_info
{
- library "Xxf86vm";
+ library "gdi32";
+ library "xinput";
};
};
- if "arch=win32"
+ if_arch "darwin"
{
build_info
{
- library "opengl32";
- library "gdi32";
+ library "CoreFoundation.framework";
+ library "AppKit.framework";
+ };
+ };
+
+ feature "devil" "Include DevIL support for loading image files";
+ if_feature "devil"
+ {
+ require "IL";
+ };
+
+ feature "libpng" "Include libpng support for loading PNG files"
+ {
+ default "yes";
+ };
+ if_feature "libpng"
+ {
+ require "libpng";
+ };
+
+ feature "libjpeg" "Include libjpeg support for loading JPEG files"
+ {
+ default "yes";
+ };
+ if_feature "libjpeg"
+ {
+ build_info
+ {
+ library "jpeg";
+ };
+ };
+
+ if_arch "darwin"
+ {
+ feature "quartz" "Include Quartz support for loading image files"
+ {
+ default "yes";
+ };
+ if_feature "quartz"
+ {
+ build_info
+ {
+ library "ApplicationServices.framework";
+ };
+ };
+ };
+
+ feature "opengl" "Include support for OpenGL contexts"
+ {
+ default "yes";
+ };
+ if_feature "opengl"
+ {
+ if_arch "android"
+ {
+ require "opengles";
+ };
+ if_arch "!android"
+ {
+ require "opengl";
};
};
- library "mspgbase"
+ if_arch "!windows & !darwin & !android"
{
- source "source";
+ feature "xrandr" "Include support for video mode switching with XRandR"
+ {
+ export true;
+ };
+ if_feature "xrandr"
+ {
+ require "xrandr";
+ };
+ };
+
+ library "mspgui"
+ {
+ source "source/graphics";
+ source "source/input";
+ if_feature "libpng"
+ {
+ source "source/graphics/png";
+ };
+ if_feature "libjpeg"
+ {
+ source "source/graphics/jpeg";
+ };
+ if_feature "devil"
+ {
+ source "source/graphics/devil";
+ };
+ if_arch "linux"
+ {
+ overlay "linux";
+ };
+ if_arch "windows"
+ {
+ overlay "windows";
+ if_feature "opengl"
+ {
+ overlay "wgl";
+ };
+ };
+ if_arch "darwin"
+ {
+ if_feature "quartz"
+ {
+ source "source/graphics/quartz";
+ };
+ overlay "cocoa";
+ if_feature "opengl"
+ {
+ overlay "cgl";
+ };
+ build_info
+ {
+ standard CC "c99";
+ };
+ };
+ if_arch "android"
+ {
+ overlay "android";
+ if_feature "opengl"
+ {
+ overlay "egl_android";
+ };
+ };
+ if_arch "!windows & !darwin & !android"
+ {
+ overlay "x11";
+ if_feature "opengl"
+ {
+ overlay "glx";
+ };
+ };
+ overlay "generic";
install true;
- install_headers "msp/gbase";
+ install_map
+ {
+ map "source" "include/msp";
+ };
+ };
+
+ program "ev"
+ {
+ source "examples/ev.cpp";
+ use "mspgui";
+ };
+
+ source_tarball
+ {
+ source "License.txt";
+ source "Changelog.txt";
};
};