generate pkgconfig file (don't commit yet i fucked it up)
Some checks failed
pyrite-dev/milsko/pipeline/head There was a failure building this commit
Some checks failed
pyrite-dev/milsko/pipeline/head There was a failure building this commit
This commit is contained in:
parent
4b6eae99dc
commit
c705d2b98c
375 changed files with 203503 additions and 203476 deletions
|
|
@ -1,12 +1,12 @@
|
|||
use_backend("classicmacos");
|
||||
|
||||
print(
|
||||
"Compiling for Classic Mac OS via ./configure currently outputs a broken executable and it only supports PowerPC. Help is wanted. In the mean time, use CMake."
|
||||
);
|
||||
|
||||
$cc = $ENV{RETRO68_TOOLCHAIN_PATH} . "/bin/powerpc-apple-macos-gcc";
|
||||
$ar = $ENV{RETRO68_TOOLCHAIN_PATH} . "/bin/powerpc-apple-macos-ar";
|
||||
add_cflags("-DCLASSIC_MAC_OS");
|
||||
add_cflags("-DSTBI_NO_THREAD_LOCALS");
|
||||
|
||||
1;
|
||||
use_backend("classicmacos");
|
||||
|
||||
print(
|
||||
"Compiling for Classic Mac OS via ./configure currently outputs a broken executable and it only supports PowerPC. Help is wanted. In the mean time, use CMake."
|
||||
);
|
||||
|
||||
$cc = $ENV{RETRO68_TOOLCHAIN_PATH} . "/bin/powerpc-apple-macos-gcc";
|
||||
$ar = $ENV{RETRO68_TOOLCHAIN_PATH} . "/bin/powerpc-apple-macos-ar";
|
||||
add_cflags("-DCLASSIC_MAC_OS");
|
||||
add_cflags("-DSTBI_NO_THREAD_LOCALS");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
$library_suffix = ".dylib";
|
||||
set_shared_flag("-dynamiclib");
|
||||
|
||||
#use_backend("cocoa");
|
||||
new_object("src/backend/nococoa.m");
|
||||
|
||||
add_cflags("-DSTBI_NO_THREAD_LOCALS");
|
||||
add_ldflags("-framework Cocoa -lobjc");
|
||||
|
||||
1;
|
||||
$library_suffix = ".dylib";
|
||||
set_shared_flag("-dynamiclib");
|
||||
|
||||
#use_backend("cocoa");
|
||||
new_object("src/backend/nococoa.m");
|
||||
|
||||
add_cflags("-DSTBI_NO_THREAD_LOCALS");
|
||||
add_ldflags("-framework Cocoa -lobjc");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,19 +1,19 @@
|
|||
my @enabled_backends = ();
|
||||
|
||||
add_incdir2("-I/usr/local/include");
|
||||
add_libdir("-L/usr/local/lib -Wl,-R/usr/local/lib");
|
||||
|
||||
if (param_get("wayland") && not(param_get("tiny"))) {
|
||||
push(@enabled_backends, "wayland");
|
||||
}
|
||||
if (param_get("x11")) {
|
||||
push(@enabled_backends, "x11");
|
||||
}
|
||||
|
||||
use_backend(@enabled_backends);
|
||||
|
||||
add_libs("-lpthread");
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
1;
|
||||
my @enabled_backends = ();
|
||||
|
||||
add_incdir2("-I/usr/local/include");
|
||||
add_libdir("-L/usr/local/lib -Wl,-R/usr/local/lib");
|
||||
|
||||
if (param_get("wayland") && not(param_get("tiny"))) {
|
||||
push(@enabled_backends, "wayland");
|
||||
}
|
||||
if (param_get("x11")) {
|
||||
push(@enabled_backends, "x11");
|
||||
}
|
||||
|
||||
use_backend(@enabled_backends);
|
||||
|
||||
add_libs("-lpthread");
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
use_backend("haiku");
|
||||
|
||||
1;
|
||||
use_backend("haiku");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
my @enabled_backends = ();
|
||||
|
||||
if (param_get("wayland") && not(param_get("tiny"))) {
|
||||
push(@enabled_backends, "wayland");
|
||||
}
|
||||
if (param_get("x11")) {
|
||||
push(@enabled_backends, "x11");
|
||||
}
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
use_backend(@enabled_backends);
|
||||
|
||||
1;
|
||||
my @enabled_backends = ();
|
||||
|
||||
if (param_get("wayland") && not(param_get("tiny"))) {
|
||||
push(@enabled_backends, "wayland");
|
||||
}
|
||||
if (param_get("x11")) {
|
||||
push(@enabled_backends, "x11");
|
||||
}
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
use_backend(@enabled_backends);
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
add_incdir2("-I/usr/X11R7/include -I/usr/pkg/include");
|
||||
add_libdir(
|
||||
"-L/usr/X11R7/lib -Wl,-R/usr/X11R7/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib");
|
||||
use_backend("x11");
|
||||
add_libs("-lpthread");
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
1;
|
||||
add_incdir2("-I/usr/X11R7/include -I/usr/pkg/include");
|
||||
add_libdir(
|
||||
"-L/usr/X11R7/lib -Wl,-R/usr/X11R7/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib");
|
||||
use_backend("x11");
|
||||
add_libs("-lpthread");
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
add_incdir2("-I/usr/local/include");
|
||||
add_libdir("-L/usr/local/lib -Wl,-R/usr/local/lib");
|
||||
use_backend("x11");
|
||||
add_libs("-lpthread");
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
1;
|
||||
add_incdir2("-I/usr/local/include");
|
||||
add_libdir("-L/usr/local/lib -Wl,-R/usr/local/lib");
|
||||
use_backend("x11");
|
||||
add_libs("-lpthread");
|
||||
|
||||
add_cflags("-DUSE_DBUS");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
use_backend("x11");
|
||||
|
||||
1;
|
||||
use_backend("x11");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
add_libs("-lsocket -lnsl");
|
||||
use_backend("x11");
|
||||
|
||||
1;
|
||||
add_libs("-lsocket -lnsl");
|
||||
use_backend("x11");
|
||||
|
||||
1;
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
$library_prefix = "";
|
||||
$library_suffix = ".dll";
|
||||
$executable_suffix = ".exe";
|
||||
$math = "";
|
||||
add_ldflags("-Wl,--out-implib,src/libMw.dll.a -static-libgcc");
|
||||
use_backend("gdi");
|
||||
|
||||
1;
|
||||
$library_prefix = "";
|
||||
$library_suffix = ".dll";
|
||||
$executable_suffix = ".exe";
|
||||
$math = "";
|
||||
add_ldflags("-Wl,--out-implib,src/libMw.dll.a -static-libgcc");
|
||||
use_backend("gdi");
|
||||
|
||||
1;
|
||||
|
|
|
|||
444
pl/rules.pl
444
pl/rules.pl
|
|
@ -1,222 +1,222 @@
|
|||
new_object("src/*.c");
|
||||
|
||||
my $gl_libs = "";
|
||||
if (param_get("tiny")) {
|
||||
add_cflags("-Oz");
|
||||
if (defined($ENV{CC}) && grep(/^clang$/, $ENV{CC})) {
|
||||
add_libs("-flto=full");
|
||||
add_cflags("-flto=full");
|
||||
}
|
||||
add_cflags("-fdata-sections -ffunction-sections");
|
||||
add_libs("-Wl,--gc-sections");
|
||||
|
||||
# these don't actually disable either, they're here for the final output.
|
||||
param_set("wayland", 0);
|
||||
param_set("dbus", 0);
|
||||
}
|
||||
if (param_get("classic-theme")) {
|
||||
add_cflags("-DUSE_CLASSIC_THEME");
|
||||
}
|
||||
if (grep(/^x11$/, @backends)) {
|
||||
add_cflags("-DUSE_X11");
|
||||
new_object("src/backend/x11.c");
|
||||
|
||||
$gl_libs = "-lGL -lGLU";
|
||||
|
||||
if (param_get("xrender")) {
|
||||
add_cflags("-DUSE_XRENDER");
|
||||
}
|
||||
}
|
||||
|
||||
if (grep(/^gdi$/, @backends)) {
|
||||
add_cflags("-DUSE_GDI");
|
||||
new_object("src/backend/gdi.c");
|
||||
add_libs("-lgdi32");
|
||||
|
||||
$gl_libs = "-lopengl32 -lglu32";
|
||||
}
|
||||
|
||||
if (grep(/^classicmacos$/, @backends)) {
|
||||
|
||||
#add_cflags("-DCLASSIC_MAC_OS");
|
||||
new_object("src/backend/classicmacos.c");
|
||||
|
||||
$gl_libs = "";
|
||||
}
|
||||
|
||||
if (grep(/^wayland$/, @backends)) {
|
||||
add_cflags("-DUSE_WAYLAND");
|
||||
new_object("src/backend/cairo.c");
|
||||
new_object("src/backend/wayland/wayland.c");
|
||||
new_object("src/backend/wayland/buffer.c");
|
||||
new_object("src/backend/wayland/interfaces.c");
|
||||
new_object("src/backend/wayland/region.c");
|
||||
|
||||
if (param_get("opengl")) {
|
||||
add_cflags("-DWAYLAND_LOAD_OPENGL");
|
||||
}
|
||||
|
||||
scan_wayland_protocol_core();
|
||||
scan_wayland_protocol("stable", "xdg-shell", "");
|
||||
scan_wayland_protocol("stable", "viewporter", "");
|
||||
scan_wayland_protocol("stable", "tablet", "-v2");
|
||||
scan_wayland_protocol("staging", "xdg-toplevel-icon", "-v1");
|
||||
scan_wayland_protocol("staging", "cursor-shape", "-v1");
|
||||
scan_wayland_protocol("unstable", "xdg-decoration", "-unstable-v1");
|
||||
scan_wayland_protocol("unstable", "primary-selection", "-unstable-v1");
|
||||
scan_wayland_protocol("unstable", "pointer-constraints", "-unstable-v1");
|
||||
scan_wayland_protocol("unstable", "relative-pointer", "-unstable-v1");
|
||||
scan_wayland_protocol_from_file("wlr-layer-shell", "wlr-layer-shell-unstable-v1.xml");
|
||||
|
||||
$gl_libs = "-lGL -lGLU";
|
||||
}
|
||||
|
||||
if (not(param_get("dbus")) && not(param_get("tiny"))) {
|
||||
$cflags =~ s/( |^)-DUSE_DBUS( |$)/ /;
|
||||
}
|
||||
|
||||
if (grep(/( |^)-DUSE_DBUS( |$)/, $cflags)) {
|
||||
add_cflags(`pkg-config --cflags dbus-1`);
|
||||
}
|
||||
|
||||
if (grep(/^cocoa$/, @backends) || param_get("gnustep")) {
|
||||
add_cflags("-DUSE_COCOA");
|
||||
new_object("src/backend/cocoa.m");
|
||||
|
||||
if (param_get("gnustep")) {
|
||||
add_incdir("-I" . `gnustep-config --variable=GNUSTEP_SYSTEM_HEADERS`);
|
||||
add_libdir("-L" . `gnustep-config --variable=GNUSTEP_SYSTEM_LIBRARIES`);
|
||||
add_cflags("-fobjc-runtime=gnustep-2.0 -fblocks");
|
||||
add_ldflags("-lobjc -lgnustep-base -lm -lgnustep-gui");
|
||||
}
|
||||
|
||||
if (param_get("opengl")) {
|
||||
new_object("src/widget/opengl_cocoa.m");
|
||||
}
|
||||
|
||||
# John Apple my man literally everybody and their mother who knows what opengl is knows its deprecated on macos and i'm not having you spam the console with this
|
||||
add_cflags("-DGL_SILENCE_DEPRECATION");
|
||||
|
||||
$gl_libs = "-framework OpenGL";
|
||||
}
|
||||
|
||||
if (grep(/^haiku$/, @backends)) {
|
||||
add_cflags("-DUSE_HAIKU");
|
||||
new_object("src/backend/haiku.cc");
|
||||
add_libs("-lbe");
|
||||
}
|
||||
|
||||
if (param_get("stb-image")) {
|
||||
add_cflags("-DUSE_STB_IMAGE");
|
||||
if (param_get("tiny")) {
|
||||
add_cflags("-DSTB_IMAGE_STATIC");
|
||||
add_cflags("-DSTB_IMAGE_IMPLEMENTATION");
|
||||
}
|
||||
}
|
||||
else {
|
||||
new_object("external/libjpeg/src/*.c");
|
||||
new_object("external/libpng/src/*.c");
|
||||
add_incdir("-Iexternal/libjpeg/include -Iexternal/libpng/include");
|
||||
}
|
||||
if (param_get("stb-truetype")) {
|
||||
add_cflags("-DUSE_STB_TRUETYPE");
|
||||
}
|
||||
if (param_get("allow-sloppy-focus")) {
|
||||
add_cflags("-DALLOW_SLOPPY_FOCUS");
|
||||
}
|
||||
|
||||
add_incdir("-Iexternal/libz/include");
|
||||
|
||||
if (param_get("freetype2")) {
|
||||
add_cflags("-DUSE_FREETYPE2");
|
||||
if (!$cross) {
|
||||
add_cflags(`pkg-config --cflags freetype2`);
|
||||
}
|
||||
}
|
||||
|
||||
if (param_get("vulkan") && param_get("vulkan-string-helper")) {
|
||||
add_cflags("-DHAS_VK_ENUM_STRING_HELPER");
|
||||
}
|
||||
|
||||
new_object("src/icon/*.c");
|
||||
new_object("src/cursor/*.c");
|
||||
new_object("src/text/*.c");
|
||||
new_object("src/text/font/*.c");
|
||||
|
||||
new_object("src/widget/box.c");
|
||||
new_object("src/widget/button.c");
|
||||
new_object("src/widget/calendar.c");
|
||||
new_object("src/widget/checkbox.c");
|
||||
new_object("src/widget/combobox.c");
|
||||
new_object("src/widget/entry.c");
|
||||
new_object("src/widget/frame.c");
|
||||
new_object("src/widget/image.c");
|
||||
new_object("src/widget/label.c");
|
||||
new_object("src/widget/listbox.c");
|
||||
new_object("src/widget/menu.c");
|
||||
new_object("src/widget/numberentry.c");
|
||||
new_object("src/widget/progressbar.c");
|
||||
new_object("src/widget/radiobox.c");
|
||||
new_object("src/widget/scrollbar.c");
|
||||
new_object("src/widget/separator.c");
|
||||
new_object("src/widget/submenu.c");
|
||||
new_object("src/widget/subwindow.c");
|
||||
new_object("src/widget/tab.c");
|
||||
new_object("src/widget/table.c");
|
||||
new_object("src/widget/treeview.c");
|
||||
new_object("src/widget/viewport.c");
|
||||
new_object("src/widget/window.c");
|
||||
|
||||
new_object("src/widget/opengl.c");
|
||||
new_object("src/widget/vulkan.c");
|
||||
|
||||
if (param_get("opengl")) {
|
||||
add_cflags("-DMW_OPENGL");
|
||||
}
|
||||
if (param_get("vulkan")) {
|
||||
add_cflags("-DMW_VULKAN");
|
||||
}
|
||||
|
||||
new_object("src/dialog/*.c");
|
||||
|
||||
new_object("src/abstract/*.c");
|
||||
|
||||
new_object("external/*.c");
|
||||
new_object("external/libz/src/*.c");
|
||||
|
||||
new_example("examples/basic/example");
|
||||
new_example("examples/basic/rotate");
|
||||
new_example("examples/basic/image");
|
||||
new_example("examples/basic/scrollbar");
|
||||
new_example("examples/basic/checkbox");
|
||||
new_example("examples/basic/radiobox");
|
||||
new_example("examples/basic/messagebox");
|
||||
new_example("examples/basic/viewport");
|
||||
new_example("examples/basic/listbox");
|
||||
new_example("examples/basic/progressbar");
|
||||
new_example("examples/basic/colorpicker");
|
||||
new_example("examples/basic/combobox");
|
||||
new_example("examples/basic/treeview");
|
||||
new_example("examples/basic/box");
|
||||
new_example("examples/basic/clipboard");
|
||||
new_example("examples/basic/sevensegment");
|
||||
new_example("examples/basic/calculator");
|
||||
new_example("examples/basic/filechooser");
|
||||
new_example("examples/basic/periodic");
|
||||
new_example("examples/basic/subwindow");
|
||||
new_example("examples/basic/tab");
|
||||
|
||||
if (param_get("opengl")) {
|
||||
new_example("examples/gldemos/boing", $gl_libs);
|
||||
new_example("examples/gldemos/clock", $gl_libs);
|
||||
new_example("examples/gldemos/cube", $gl_libs);
|
||||
new_example("examples/gldemos/gears", $gl_libs);
|
||||
new_example("examples/gldemos/triangle", $gl_libs);
|
||||
new_example("examples/gldemos/tripaint", $gl_libs);
|
||||
}
|
||||
|
||||
if (param_get("vulkan")) {
|
||||
new_example("examples/vkdemos/vulkan");
|
||||
}
|
||||
|
||||
1;
|
||||
new_object("src/*.c");
|
||||
|
||||
my $gl_libs = "";
|
||||
if (param_get("tiny")) {
|
||||
add_cflags("-Oz");
|
||||
if (defined($ENV{CC}) && grep(/^clang$/, $ENV{CC})) {
|
||||
add_libs("-flto=full");
|
||||
add_cflags("-flto=full");
|
||||
}
|
||||
add_cflags("-fdata-sections -ffunction-sections");
|
||||
add_libs("-Wl,--gc-sections");
|
||||
|
||||
# these don't actually disable either, they're here for the final output.
|
||||
param_set("wayland", 0);
|
||||
param_set("dbus", 0);
|
||||
}
|
||||
if (param_get("classic-theme")) {
|
||||
add_cflags("-DUSE_CLASSIC_THEME");
|
||||
}
|
||||
if (grep(/^x11$/, @backends)) {
|
||||
add_cflags("-DUSE_X11");
|
||||
new_object("src/backend/x11.c");
|
||||
|
||||
$gl_libs = "-lGL -lGLU";
|
||||
|
||||
if (param_get("xrender")) {
|
||||
add_cflags("-DUSE_XRENDER");
|
||||
}
|
||||
}
|
||||
|
||||
if (grep(/^gdi$/, @backends)) {
|
||||
add_cflags("-DUSE_GDI");
|
||||
new_object("src/backend/gdi.c");
|
||||
add_libs("-lgdi32");
|
||||
|
||||
$gl_libs = "-lopengl32 -lglu32";
|
||||
}
|
||||
|
||||
if (grep(/^classicmacos$/, @backends)) {
|
||||
|
||||
#add_cflags("-DCLASSIC_MAC_OS");
|
||||
new_object("src/backend/classicmacos.c");
|
||||
|
||||
$gl_libs = "";
|
||||
}
|
||||
|
||||
if (grep(/^wayland$/, @backends)) {
|
||||
add_cflags("-DUSE_WAYLAND");
|
||||
new_object("src/backend/cairo.c");
|
||||
new_object("src/backend/wayland/wayland.c");
|
||||
new_object("src/backend/wayland/buffer.c");
|
||||
new_object("src/backend/wayland/interfaces.c");
|
||||
new_object("src/backend/wayland/region.c");
|
||||
|
||||
if (param_get("opengl")) {
|
||||
add_cflags("-DWAYLAND_LOAD_OPENGL");
|
||||
}
|
||||
|
||||
scan_wayland_protocol_core();
|
||||
scan_wayland_protocol("stable", "xdg-shell", "");
|
||||
scan_wayland_protocol("stable", "viewporter", "");
|
||||
scan_wayland_protocol("stable", "tablet", "-v2");
|
||||
scan_wayland_protocol("staging", "xdg-toplevel-icon", "-v1");
|
||||
scan_wayland_protocol("staging", "cursor-shape", "-v1");
|
||||
scan_wayland_protocol("unstable", "xdg-decoration", "-unstable-v1");
|
||||
scan_wayland_protocol("unstable", "primary-selection", "-unstable-v1");
|
||||
scan_wayland_protocol("unstable", "pointer-constraints", "-unstable-v1");
|
||||
scan_wayland_protocol("unstable", "relative-pointer", "-unstable-v1");
|
||||
scan_wayland_protocol_from_file("wlr-layer-shell", "wlr-layer-shell-unstable-v1.xml");
|
||||
|
||||
$gl_libs = "-lGL -lGLU";
|
||||
}
|
||||
|
||||
if (not(param_get("dbus")) && not(param_get("tiny"))) {
|
||||
$cflags =~ s/( |^)-DUSE_DBUS( |$)/ /;
|
||||
}
|
||||
|
||||
if (grep(/( |^)-DUSE_DBUS( |$)/, $cflags)) {
|
||||
add_cflags(`pkg-config --cflags dbus-1`);
|
||||
}
|
||||
|
||||
if (grep(/^cocoa$/, @backends) || param_get("gnustep")) {
|
||||
add_cflags("-DUSE_COCOA");
|
||||
new_object("src/backend/cocoa.m");
|
||||
|
||||
if (param_get("gnustep")) {
|
||||
add_incdir("-I" . `gnustep-config --variable=GNUSTEP_SYSTEM_HEADERS`);
|
||||
add_libdir("-L" . `gnustep-config --variable=GNUSTEP_SYSTEM_LIBRARIES`);
|
||||
add_cflags("-fobjc-runtime=gnustep-2.0 -fblocks");
|
||||
add_ldflags("-lobjc -lgnustep-base -lm -lgnustep-gui");
|
||||
}
|
||||
|
||||
if (param_get("opengl")) {
|
||||
new_object("src/widget/opengl_cocoa.m");
|
||||
}
|
||||
|
||||
# John Apple my man literally everybody and their mother who knows what opengl is knows its deprecated on macos and i'm not having you spam the console with this
|
||||
add_cflags("-DGL_SILENCE_DEPRECATION");
|
||||
|
||||
$gl_libs = "-framework OpenGL";
|
||||
}
|
||||
|
||||
if (grep(/^haiku$/, @backends)) {
|
||||
add_cflags("-DUSE_HAIKU");
|
||||
new_object("src/backend/haiku.cc");
|
||||
add_libs("-lbe");
|
||||
}
|
||||
|
||||
if (param_get("stb-image")) {
|
||||
add_cflags("-DUSE_STB_IMAGE");
|
||||
if (param_get("tiny")) {
|
||||
add_cflags("-DSTB_IMAGE_STATIC");
|
||||
add_cflags("-DSTB_IMAGE_IMPLEMENTATION");
|
||||
}
|
||||
}
|
||||
else {
|
||||
new_object("external/libjpeg/src/*.c");
|
||||
new_object("external/libpng/src/*.c");
|
||||
add_incdir("-Iexternal/libjpeg/include -Iexternal/libpng/include");
|
||||
}
|
||||
if (param_get("stb-truetype")) {
|
||||
add_cflags("-DUSE_STB_TRUETYPE");
|
||||
}
|
||||
if (param_get("allow-sloppy-focus")) {
|
||||
add_cflags("-DALLOW_SLOPPY_FOCUS");
|
||||
}
|
||||
|
||||
add_incdir("-Iexternal/libz/include");
|
||||
|
||||
if (param_get("freetype2")) {
|
||||
add_cflags("-DUSE_FREETYPE2");
|
||||
if (!$cross) {
|
||||
add_cflags(`pkg-config --cflags freetype2`);
|
||||
}
|
||||
}
|
||||
|
||||
if (param_get("vulkan") && param_get("vulkan-string-helper")) {
|
||||
add_cflags("-DHAS_VK_ENUM_STRING_HELPER");
|
||||
}
|
||||
|
||||
new_object("src/icon/*.c");
|
||||
new_object("src/cursor/*.c");
|
||||
new_object("src/text/*.c");
|
||||
new_object("src/text/font/*.c");
|
||||
|
||||
new_object("src/widget/box.c");
|
||||
new_object("src/widget/button.c");
|
||||
new_object("src/widget/calendar.c");
|
||||
new_object("src/widget/checkbox.c");
|
||||
new_object("src/widget/combobox.c");
|
||||
new_object("src/widget/entry.c");
|
||||
new_object("src/widget/frame.c");
|
||||
new_object("src/widget/image.c");
|
||||
new_object("src/widget/label.c");
|
||||
new_object("src/widget/listbox.c");
|
||||
new_object("src/widget/menu.c");
|
||||
new_object("src/widget/numberentry.c");
|
||||
new_object("src/widget/progressbar.c");
|
||||
new_object("src/widget/radiobox.c");
|
||||
new_object("src/widget/scrollbar.c");
|
||||
new_object("src/widget/separator.c");
|
||||
new_object("src/widget/submenu.c");
|
||||
new_object("src/widget/subwindow.c");
|
||||
new_object("src/widget/tab.c");
|
||||
new_object("src/widget/table.c");
|
||||
new_object("src/widget/treeview.c");
|
||||
new_object("src/widget/viewport.c");
|
||||
new_object("src/widget/window.c");
|
||||
|
||||
new_object("src/widget/opengl.c");
|
||||
new_object("src/widget/vulkan.c");
|
||||
|
||||
if (param_get("opengl")) {
|
||||
add_cflags("-DMW_OPENGL");
|
||||
}
|
||||
if (param_get("vulkan")) {
|
||||
add_cflags("-DMW_VULKAN");
|
||||
}
|
||||
|
||||
new_object("src/dialog/*.c");
|
||||
|
||||
new_object("src/abstract/*.c");
|
||||
|
||||
new_object("external/*.c");
|
||||
new_object("external/libz/src/*.c");
|
||||
|
||||
new_example("examples/basic/example");
|
||||
new_example("examples/basic/rotate");
|
||||
new_example("examples/basic/image");
|
||||
new_example("examples/basic/scrollbar");
|
||||
new_example("examples/basic/checkbox");
|
||||
new_example("examples/basic/radiobox");
|
||||
new_example("examples/basic/messagebox");
|
||||
new_example("examples/basic/viewport");
|
||||
new_example("examples/basic/listbox");
|
||||
new_example("examples/basic/progressbar");
|
||||
new_example("examples/basic/colorpicker");
|
||||
new_example("examples/basic/combobox");
|
||||
new_example("examples/basic/treeview");
|
||||
new_example("examples/basic/box");
|
||||
new_example("examples/basic/clipboard");
|
||||
new_example("examples/basic/sevensegment");
|
||||
new_example("examples/basic/calculator");
|
||||
new_example("examples/basic/filechooser");
|
||||
new_example("examples/basic/periodic");
|
||||
new_example("examples/basic/subwindow");
|
||||
new_example("examples/basic/tab");
|
||||
|
||||
if (param_get("opengl")) {
|
||||
new_example("examples/gldemos/boing", $gl_libs);
|
||||
new_example("examples/gldemos/clock", $gl_libs);
|
||||
new_example("examples/gldemos/cube", $gl_libs);
|
||||
new_example("examples/gldemos/gears", $gl_libs);
|
||||
new_example("examples/gldemos/triangle", $gl_libs);
|
||||
new_example("examples/gldemos/tripaint", $gl_libs);
|
||||
}
|
||||
|
||||
if (param_get("vulkan")) {
|
||||
new_example("examples/vkdemos/vulkan");
|
||||
}
|
||||
|
||||
1;
|
||||
|
|
|
|||
358
pl/utils.pl
358
pl/utils.pl
|
|
@ -1,179 +1,179 @@
|
|||
sub add_incdir {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$incdir = "${incdir} ${input}";
|
||||
}
|
||||
|
||||
sub add_incdir2 {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$incdir2 = "${incdir2} ${input}";
|
||||
}
|
||||
|
||||
sub add_cflags {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$cflags = "${cflags} ${input}";
|
||||
}
|
||||
|
||||
sub add_libdir {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$libdir = "${libdir} ${input}";
|
||||
}
|
||||
|
||||
sub add_ldflags {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$ldflags = "${ldflags} ${input}";
|
||||
}
|
||||
|
||||
sub add_libs {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$libs = "${libs} ${input}";
|
||||
}
|
||||
|
||||
sub new_example {
|
||||
if (@_ == 2) {
|
||||
$examples_libs{"$_[0]${executable_suffix}"} = $_[1];
|
||||
}
|
||||
push(@examples_targets, "${_[0]}${executable_suffix}");
|
||||
}
|
||||
|
||||
sub set_shared_flag {
|
||||
@shared = $_[0];
|
||||
}
|
||||
|
||||
sub new_object {
|
||||
my @l = glob($_[0]);
|
||||
foreach my $e (@l) {
|
||||
$e =~ s/\.(cc|c|m)$/$object_suffix/;
|
||||
push(@library_targets, $e);
|
||||
}
|
||||
}
|
||||
|
||||
sub use_backend {
|
||||
foreach my $l (@_) {
|
||||
push(@backends, $l);
|
||||
}
|
||||
}
|
||||
|
||||
sub scan_wayland_protocol_core {
|
||||
my $proto_c = "src/backend/wayland/wayland-core-protocol.c";
|
||||
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner private-code /usr/share/wayland/wayland.xml ${proto_c}"
|
||||
) != 0
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting private code for /usr/share/wayland/wayland.xml\n"
|
||||
);
|
||||
}
|
||||
else {
|
||||
new_object($proto_c);
|
||||
}
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner client-header /usr/share/wayland/wayland.xml include/Mw/LowLevel/Wayland/wayland-core-protocol.h"
|
||||
)
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting client header for /usr/share/wayland/wayland.xml\n"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
sub scan_wayland_protocol {
|
||||
my $tier = $_[0];
|
||||
my $proto = $_[1];
|
||||
my $ver = $_[2];
|
||||
|
||||
my $proto_c = "src/backend/wayland/wayland-${proto}-protocol.c";
|
||||
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner private-code /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml ${proto_c}"
|
||||
) != 0
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting private code for /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml\n"
|
||||
);
|
||||
}
|
||||
else {
|
||||
new_object($proto_c);
|
||||
}
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner client-header /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml include/Mw/LowLevel/Wayland/${proto}-client-protocol.h"
|
||||
)
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting client header for /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml\n"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub scan_wayland_protocol_from_file {
|
||||
my $proto = $_[0];
|
||||
my $file = $_[1];
|
||||
my $proto_c = "src/backend/wayland/wayland-${proto}-protocol.c";
|
||||
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner private-code ./resource/wayland/${file} ${proto_c}"
|
||||
) != 0
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting private code for ./resource/wayland/${file}\n"
|
||||
);
|
||||
}
|
||||
else {
|
||||
new_object($proto_c);
|
||||
}
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner client-header ./resource/wayland/${file} include/Mw/LowLevel/Wayland/${proto}-client-protocol.h"
|
||||
)
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting client header for ./resource/wayland/${file}\n"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
our %params = ();
|
||||
|
||||
sub param_set {
|
||||
$params{ $_[0] } = $_[1];
|
||||
}
|
||||
|
||||
sub param_get {
|
||||
if (not(defined($params{ $_[0] }))) {
|
||||
return 0;
|
||||
}
|
||||
else {
|
||||
return $params{ $_[0] };
|
||||
}
|
||||
}
|
||||
|
||||
sub param_list {
|
||||
return sort(keys(%params));
|
||||
}
|
||||
|
||||
1;
|
||||
sub add_incdir {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$incdir = "${incdir} ${input}";
|
||||
}
|
||||
|
||||
sub add_incdir2 {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$incdir2 = "${incdir2} ${input}";
|
||||
}
|
||||
|
||||
sub add_cflags {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$cflags = "${cflags} ${input}";
|
||||
}
|
||||
|
||||
sub add_libdir {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$libdir = "${libdir} ${input}";
|
||||
}
|
||||
|
||||
sub add_ldflags {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$ldflags = "${ldflags} ${input}";
|
||||
}
|
||||
|
||||
sub add_libs {
|
||||
my $input = $_[0];
|
||||
$input =~ s/\r?\n/ /g;
|
||||
|
||||
$libs = "${libs} ${input}";
|
||||
}
|
||||
|
||||
sub new_example {
|
||||
if (@_ == 2) {
|
||||
$examples_libs{"$_[0]${executable_suffix}"} = $_[1];
|
||||
}
|
||||
push(@examples_targets, "${_[0]}${executable_suffix}");
|
||||
}
|
||||
|
||||
sub set_shared_flag {
|
||||
@shared = $_[0];
|
||||
}
|
||||
|
||||
sub new_object {
|
||||
my @l = glob($_[0]);
|
||||
foreach my $e (@l) {
|
||||
$e =~ s/\.(cc|c|m)$/$object_suffix/;
|
||||
push(@library_targets, $e);
|
||||
}
|
||||
}
|
||||
|
||||
sub use_backend {
|
||||
foreach my $l (@_) {
|
||||
push(@backends, $l);
|
||||
}
|
||||
}
|
||||
|
||||
sub scan_wayland_protocol_core {
|
||||
my $proto_c = "src/backend/wayland/wayland-core-protocol.c";
|
||||
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner private-code /usr/share/wayland/wayland.xml ${proto_c}"
|
||||
) != 0
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting private code for /usr/share/wayland/wayland.xml\n"
|
||||
);
|
||||
}
|
||||
else {
|
||||
new_object($proto_c);
|
||||
}
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner client-header /usr/share/wayland/wayland.xml include/Mw/LowLevel/Wayland/wayland-core-protocol.h"
|
||||
)
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting client header for /usr/share/wayland/wayland.xml\n"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
sub scan_wayland_protocol {
|
||||
my $tier = $_[0];
|
||||
my $proto = $_[1];
|
||||
my $ver = $_[2];
|
||||
|
||||
my $proto_c = "src/backend/wayland/wayland-${proto}-protocol.c";
|
||||
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner private-code /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml ${proto_c}"
|
||||
) != 0
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting private code for /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml\n"
|
||||
);
|
||||
}
|
||||
else {
|
||||
new_object($proto_c);
|
||||
}
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner client-header /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml include/Mw/LowLevel/Wayland/${proto}-client-protocol.h"
|
||||
)
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting client header for /usr/share/wayland-protocols/${tier}/${proto}/${proto}${ver}.xml\n"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
sub scan_wayland_protocol_from_file {
|
||||
my $proto = $_[0];
|
||||
my $file = $_[1];
|
||||
my $proto_c = "src/backend/wayland/wayland-${proto}-protocol.c";
|
||||
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner private-code ./resource/wayland/${file} ${proto_c}"
|
||||
) != 0
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting private code for ./resource/wayland/${file}\n"
|
||||
);
|
||||
}
|
||||
else {
|
||||
new_object($proto_c);
|
||||
}
|
||||
if (
|
||||
system(
|
||||
"wayland-scanner client-header ./resource/wayland/${file} include/Mw/LowLevel/Wayland/${proto}-client-protocol.h"
|
||||
)
|
||||
)
|
||||
{
|
||||
print(
|
||||
"^ Error on getting client header for ./resource/wayland/${file}\n"
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
our %params = ();
|
||||
|
||||
sub param_set {
|
||||
$params{ $_[0] } = $_[1];
|
||||
}
|
||||
|
||||
sub param_get {
|
||||
if (not(defined($params{ $_[0] }))) {
|
||||
return 0;
|
||||
}
|
||||
else {
|
||||
return $params{ $_[0] };
|
||||
}
|
||||
}
|
||||
|
||||
sub param_list {
|
||||
return sort(keys(%params));
|
||||
}
|
||||
|
||||
1;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue