diff --git a/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo.app/Contents/Info.plist b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo.app/Contents/Info.plist
new file mode 100644
index 0000000..a0b071b
--- /dev/null
+++ b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo.app/Contents/Info.plist
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleExecutable</key>
+ <string>c3_window_sdl2_demo</string>
+ <key>CFBundleIconFile</key>
+ <string>c3</string>
+ <key>CFBundleIdentifier</key>
+ <string>io.kmx.c3-window-sdl2-demo</string>
+</dict>
+</plist>
diff --git a/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo.app/Contents/Resources/c3.icns b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo.app/Contents/Resources/c3.icns
new file mode 100644
index 0000000..377277a
Binary files /dev/null and b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo.app/Contents/Resources/c3.icns differ
diff --git a/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo_debug.app/Contents/Info.plist b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo_debug.app/Contents/Info.plist
new file mode 100644
index 0000000..a0b071b
--- /dev/null
+++ b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo_debug.app/Contents/Info.plist
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleExecutable</key>
+ <string>c3_window_sdl2_demo</string>
+ <key>CFBundleIconFile</key>
+ <string>c3</string>
+ <key>CFBundleIdentifier</key>
+ <string>io.kmx.c3-window-sdl2-demo</string>
+</dict>
+</plist>
diff --git a/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo_debug.app/Contents/Resources/c3.icns b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo_debug.app/Contents/Resources/c3.icns
new file mode 100644
index 0000000..377277a
Binary files /dev/null and b/libc3/window/sdl2/demo/macos/c3_window_sdl2_demo_debug.app/Contents/Resources/c3.icns differ
diff --git a/libc3/window/sdl2/demo/macos/configure b/libc3/window/sdl2/demo/macos/configure
index 6cff1fa..a1ac9f0 100755
--- a/libc3/window/sdl2/demo/macos/configure
+++ b/libc3/window/sdl2/demo/macos/configure
@@ -52,7 +52,9 @@ echo "${APP_PROG}: ../.libs/${PROG}" >> ${CONFIG_MK}
echo " mkdir -p ${APP}/Contents/MacOS" >> ${CONFIG_MK}
echo " cp ../.libs/${PROG} ${APP_PROG}" >> ${CONFIG_MK}
-BUNDLE_LIBS="../../../../../libffi/.libs/libffi.8.dylib ../../../../.libs/libc3.0.dylib ../../../.libs/libc3_window.0.dylib ../../.libs/libc3_window_sdl2.0.dylib"
+BUNDLE_LIBS_COMMON="/opt/homebrew/opt/sdl2/lib/libSDL2-2.0.0.dylib ../../../../../libffi/.libs/libffi.8.dylib"
+
+BUNDLE_LIBS="${BUNDLE_LIBS_COMMON} ../../../../.libs/libc3.0.dylib ../../../.libs/libc3_window.0.dylib ../../.libs/libc3_window_sdl2.0.dylib"
echo >> ${CONFIG_MK}
echo "${APP}/Contents/Frameworks: ${BUNDLE_LIBS}" >> ${CONFIG_MK}
echo " mkdir -p ${APP}/Contents/Frameworks" >> ${CONFIG_MK}
@@ -72,7 +74,7 @@ echo "${APP_PROG_ASAN}: ../.libs/${PROG_ASAN}" >> ${CONFIG_MK}
echo " mkdir -p ${APP_ASAN}/Contents/MacOS" >> ${CONFIG_MK}
echo " cp ../.libs/${PROG_ASAN} ${APP_PROG_ASAN}" >> ${CONFIG_MK}
-BUNDLE_LIBS_ASAN="../../../../../libffi/.libs/libffi.8.dylib ../../../../.libs/libc3_asan.0.dylib ../../../.libs/libc3_window_asan.0.dylib ../../.libs/libc3_window_sdl2_asan.0.dylib"
+BUNDLE_LIBS_ASAN="${BUNDLE_LIBS_COMMON} ../../../../.libs/libc3_asan.0.dylib ../../../.libs/libc3_window_asan.0.dylib ../../.libs/libc3_window_sdl2_asan.0.dylib"
echo >> ${CONFIG_MK}
echo "${APP_ASAN}/Contents/Frameworks: ${BUNDLE_LIBS_ASAN}" >> ${CONFIG_MK}
echo " mkdir -p ${APP_ASAN}/Contents/Frameworks" >> ${CONFIG_MK}
@@ -92,7 +94,7 @@ echo "${APP_PROG_COV}: ../.libs/${PROG_COV}" >> ${CONFIG_MK}
echo " mkdir -p ${APP_COV}/Contents/MacOS" >> ${CONFIG_MK}
echo " cp ../.libs/${PROG_COV} ${APP_PROG_COV}" >> ${CONFIG_MK}
-BUNDLE_LIBS_COV="../../../../../libffi/.libs/libffi.8.dylib ../../../../.libs/libc3_cov.0.dylib ../../../.libs/libc3_window_cov.0.dylib ../../.libs/libc3_window_sdl2_cov.0.dylib"
+BUNDLE_LIBS_COV="${BUNDLE_LIBS_COMMON} ../../../../.libs/libc3_cov.0.dylib ../../../.libs/libc3_window_cov.0.dylib ../../.libs/libc3_window_sdl2_cov.0.dylib"
echo >> ${CONFIG_MK}
echo "${APP_COV}/Contents/Frameworks: ${BUNDLE_LIBS_COV}" >> ${CONFIG_MK}
echo " mkdir -p ${APP_COV}/Contents/Frameworks" >> ${CONFIG_MK}
@@ -112,7 +114,7 @@ echo "${APP_PROG_DEBUG}: ../.libs/${PROG_DEBUG}" >> ${CONFIG_MK}
echo " mkdir -p ${APP_DEBUG}/Contents/MacOS" >> ${CONFIG_MK}
echo " cp ../.libs/${PROG_DEBUG} ${APP_PROG_DEBUG}" >> ${CONFIG_MK}
-BUNDLE_LIBS_DEBUG="../../../../../libffi/.libs/libffi.8.dylib ../../../../.libs/libc3_debug.0.dylib ../../../.libs/libc3_window_debug.0.dylib ../../.libs/libc3_window_sdl2_debug.0.dylib"
+BUNDLE_LIBS_DEBUG="${BUNDLE_LIBS_COMMON} ../../../../.libs/libc3_debug.0.dylib ../../../.libs/libc3_window_debug.0.dylib ../../.libs/libc3_window_sdl2_debug.0.dylib"
echo >> ${CONFIG_MK}
echo "${APP_DEBUG}/Contents/Frameworks: ${BUNDLE_LIBS_DEBUG}" >> ${CONFIG_MK}
echo " mkdir -p ${APP_DEBUG}/Contents/Frameworks" >> ${CONFIG_MK}