ref: b79f27cef85cc975b45ada246ace30b648466483
parent: 72b17f7b82b70cac0a12283b0b26b01e634c3728
author: Simon Howard <[email protected]>
date: Wed Mar 30 15:16:40 EDT 2011
Add a symlink hack to work around the fact that OS X doesn't like paths in MANPATH to contain spaces. Subversion-branch: /trunk/chocolate-doom Subversion-revision: 2318
--- a/pkg/osx/Execute.m
+++ b/pkg/osx/Execute.m
@@ -175,8 +175,19 @@
fprintf(stream, "#!/bin/sh\n");
//fprintf(stream, "set -x\n");
fprintf(stream, "PATH=\"%s:$PATH\"\n", executable_path);
- fprintf(stream, "MANPATH=\"%s/man:$(manpath)\"\n", executable_path);
+
+ // MANPATH is set to point to the directory within the bundle that
+ // contains the Unix manpages. However, the bundle name or path to
+ // it can contain a space, and OS X doesn't like this! As a
+ // workaround, create a symlink in /tmp to point to the real directory,
+ // and put *this* in MANPATH.
+
+ fprintf(stream, "rm -f \"/tmp/%s.man\"\n", PACKAGE_TARNAME);
+ fprintf(stream, "ln -s \"%s/man\" \"/tmp/%s.man\"\n",
+ executable_path, PACKAGE_TARNAME);
+ fprintf(stream, "MANPATH=\"/tmp/%s.man:$(manpath)\"\n", PACKAGE_TARNAME);
fprintf(stream, "export MANPATH\n");
+
fprintf(stream, "DOOMWADPATH=\"%s\"\n", doomwadpath);
fprintf(stream, "export DOOMWADPATH\n");
fprintf(stream, "rm -f \"%s\"\n", TEMP_SCRIPT);