From 2f0c992103c863809505fc585098d307d6453519 Mon Sep 17 00:00:00 2001 From: Jeremy Huddleston Date: Thu, 3 Sep 2009 19:40:11 -0700 Subject: XQuartz: Use --with-launchd-id-prefix for consistency with xinit Also actually honor LAUNCHD_ID_PREFIX and APPLE_APPLICATION_NAME (cherry picked from commit 990038ab006b2f5e03dcef385514ba4e4584bd25) --- configure.ac | 9 +++++---- hw/xquartz/bundle/Info.plist.cpp | 4 ++-- hw/xquartz/bundle/Makefile.am | 2 +- hw/xquartz/mach-startup/Makefile.am | 4 +++- hw/xquartz/mach-startup/bundle-main.c | 8 ++++++-- hw/xquartz/mach-startup/stub.c | 10 +++------- include/dix-config.h.in | 3 +++ 7 files changed, 23 insertions(+), 17 deletions(-) diff --git a/configure.ac b/configure.ac index 1ab51e93a..bd884fe61 100644 --- a/configure.ac +++ b/configure.ac @@ -477,10 +477,11 @@ AC_ARG_WITH(apple-application-name,AS_HELP_STRING([--with-apple-application-name [ APPLE_APPLICATION_NAME="${withval}" ], [ APPLE_APPLICATION_NAME="X11" ]) AC_SUBST([APPLE_APPLICATION_NAME]) -AC_ARG_WITH(apple-application-id,AS_HELP_STRING([--with-apple-application-id=VALUE], [CFBundleIdentification for the .app (default: org.x.X11)]), - [ APPLE_APPLICATION_ID="${withval}" ], - [ APPLE_APPLICATION_ID="org.x.X11" ]) -AC_SUBST([APPLE_APPLICATION_ID]) +AC_ARG_WITH(launchd-id-prefix, AS_HELP_STRING([--with-launchd-id-prefix=PATH], [Prefix to use for launchd identifiers (default: org.x)]), + [ LAUNCHD_ID_PREFIX="${withval}" ], + [ LAUNCHD_ID_PREFIX="org.x" ]) +AC_SUBST([LAUNCHD_ID_PREFIX]) +AC_DEFINE_UNQUOTED(LAUNCHD_ID_PREFIX, "$LAUNCHD_ID_PREFIX", [Prefix to use for launchd identifiers]) AC_ARG_ENABLE(sparkle,AS_HELP_STRING([--enable-sparkle], [Enable updating of X11.app using the Sparkle Framework (default: disabled)]), [ XQUARTZ_SPARKLE="${enableval}" ], [ XQUARTZ_SPARKLE="no" ]) diff --git a/hw/xquartz/bundle/Info.plist.cpp b/hw/xquartz/bundle/Info.plist.cpp index 854a56017..2e4e7376d 100644 --- a/hw/xquartz/bundle/Info.plist.cpp +++ b/hw/xquartz/bundle/Info.plist.cpp @@ -7,11 +7,11 @@ CFBundleExecutable X11 CFBundleGetInfoString - APPLE_APPLICATION_NAME + LAUNCHD_ID_PREFIX.X11 CFBundleIconFile X11.icns CFBundleIdentifier - APPLE_APPLICATION_ID + LAUNCHD_ID_PREFIX.X11 CFBundleInfoDictionaryVersion 6.0 CFBundleName diff --git a/hw/xquartz/bundle/Makefile.am b/hw/xquartz/bundle/Makefile.am index ea02cd620..f8b96d8c4 100644 --- a/hw/xquartz/bundle/Makefile.am +++ b/hw/xquartz/bundle/Makefile.am @@ -1,7 +1,7 @@ include cpprules.in CPP_FILES_FLAGS = \ - -DAPPLE_APPLICATION_ID="$(APPLE_APPLICATION_ID)" \ + -DLAUNCHD_ID_PREFIX="$(LAUNCHD_ID_PREFIX)" \ -DAPPLE_APPLICATION_NAME="$(APPLE_APPLICATION_NAME)" if XQUARTZ_SPARKLE diff --git a/hw/xquartz/mach-startup/Makefile.am b/hw/xquartz/mach-startup/Makefile.am index 3380d990e..50efc8f2c 100644 --- a/hw/xquartz/mach-startup/Makefile.am +++ b/hw/xquartz/mach-startup/Makefile.am @@ -3,7 +3,9 @@ AM_CPPFLAGS = \ -DXSERVER_VERSION=\"$(VERSION)\" \ -DX11BINDIR=\"$(bindir)\" -x11appdir = $(APPLE_APPLICATIONS_DIR)/X11.app/Contents/MacOS +AM_CFLAGS = $(XSERVER_CFLAGS) $(DIX_CFLAGS) + +x11appdir = $(APPLE_APPLICATIONS_DIR)/$(APPLE_APPLICATION_NAME).app/Contents/MacOS x11app_PROGRAMS = X11.bin dist_X11_bin_SOURCES = \ diff --git a/hw/xquartz/mach-startup/bundle-main.c b/hw/xquartz/mach-startup/bundle-main.c index ef5d75700..583d67ea1 100644 --- a/hw/xquartz/mach-startup/bundle-main.c +++ b/hw/xquartz/mach-startup/bundle-main.c @@ -31,6 +31,10 @@ #include #include +#ifdef HAVE_DIX_CONFIG_H +#include +#endif + #include #include #include @@ -76,7 +80,7 @@ const char *__crashreporter_info__base = "X.Org X Server " XSERVER_VERSION " Bui char __crashreporter_info__buf[4096]; char *__crashreporter_info__ = __crashreporter_info__buf; -static char *server_bootstrap_name = "org.x.X11"; +static char *server_bootstrap_name = LAUNCHD_ID_PREFIX".X11"; #define DEBUG 1 @@ -559,7 +563,7 @@ int main(int argc, char **argv, char **envp) { fprintf(stderr, "Waiting for startup parameters via Mach IPC.\n"); kr = mach_msg_server(mach_startup_server, mxmsgsz, mp, 0); if (kr != KERN_SUCCESS) { - fprintf(stderr, "org.x.X11(mp): %s\n", mach_error_string(kr)); + fprintf(stderr, "%s.X11(mp): %s\n", LAUNCHD_ID_PREFIX, mach_error_string(kr)); return EXIT_FAILURE; } diff --git a/hw/xquartz/mach-startup/stub.c b/hw/xquartz/mach-startup/stub.c index 7eb894c70..5e436a945 100644 --- a/hw/xquartz/mach-startup/stub.c +++ b/hw/xquartz/mach-startup/stub.c @@ -40,15 +40,11 @@ #include #include -static char *server_bootstrap_name = "org.x.X11"; - -/* The launchd startup is only designed for the primary X11.app that is - * org.x.X11... server_bootstrap_name might be differnet if we were triggered to - * start by another X11.app. - */ -#define kX11AppBundleId "org.x.X11" +#define kX11AppBundleId LAUNCHD_ID_PREFIX".X11" #define kX11AppBundlePath "/Contents/MacOS/X11" +static char *server_bootstrap_name = kX11AppBundleId; + #include #include #include diff --git a/include/dix-config.h.in b/include/dix-config.h.in index 10df85c56..ac6d8b79a 100644 --- a/include/dix-config.h.in +++ b/include/dix-config.h.in @@ -145,6 +145,9 @@ /* Support application updating through sparkle. */ #undef XQUARTZ_SPARKLE +/* Prefix to use for launchd identifiers */ +#undef LAUNCHD_ID_PREFIX + /* Build a standalone xpbproxy */ #undef STANDALONE_XPBPROXY -- cgit v1.2.3