filename | src/paths.c |
changeset | 866:86cd01c2b2d3 |
author | nkeynes |
date | Fri Nov 07 06:39:12 2008 +0000 (15 years ago) |
permissions | -rw-r--r-- |
last change | Implement a sorted TLB lookup table (big improvement over the linear table scan) Optimize out the 1C000000 -> FC000000 check at the end of the lookup functions |
file | annotate | diff | log | raw |
nkeynes@866 | 1 | /** |
nkeynes@866 | 2 | * $Id: cocoaui.c 863 2008-09-06 05:21:57Z nkeynes $ |
nkeynes@866 | 3 | * |
nkeynes@866 | 4 | * Wrappers for system-dependent functions (mainly path differences) |
nkeynes@866 | 5 | * |
nkeynes@866 | 6 | * Copyright (c) 2008 Nathan Keynes. |
nkeynes@866 | 7 | * |
nkeynes@866 | 8 | * This program is free software; you can redistribute it and/or modify |
nkeynes@866 | 9 | * it under the terms of the GNU General Public License as published by |
nkeynes@866 | 10 | * the Free Software Foundation; either version 2 of the License, or |
nkeynes@866 | 11 | * (at your option) any later version. |
nkeynes@866 | 12 | * |
nkeynes@866 | 13 | * This program is distributed in the hope that it will be useful, |
nkeynes@866 | 14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
nkeynes@866 | 15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
nkeynes@866 | 16 | * GNU General Public License for more details. |
nkeynes@866 | 17 | */ |
nkeynes@866 | 18 | |
nkeynes@866 | 19 | #include <string.h> |
nkeynes@866 | 20 | |
nkeynes@866 | 21 | #include "lxdream.h" |
nkeynes@866 | 22 | |
nkeynes@866 | 23 | /* Bundle builds need to use different paths from ordinary builds, since |
nkeynes@866 | 24 | * the message catalogs, default config, etc are all bundle-relative. |
nkeynes@866 | 25 | * Otherwise paths use the standard unix install paths |
nkeynes@866 | 26 | */ |
nkeynes@866 | 27 | #ifdef OSX_BUNDLE |
nkeynes@866 | 28 | |
nkeynes@866 | 29 | #include <AppKit/AppKit.h> |
nkeynes@866 | 30 | |
nkeynes@866 | 31 | static char *bundle_resource_path = NULL; |
nkeynes@866 | 32 | |
nkeynes@866 | 33 | static char *get_bundle_resource_path() |
nkeynes@866 | 34 | { |
nkeynes@866 | 35 | if( bundle_resource_path == NULL ) { |
nkeynes@866 | 36 | NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; |
nkeynes@866 | 37 | NSString *resourcePath = [[NSBundle mainBundle] resourcePath]; |
nkeynes@866 | 38 | bundle_resource_path = strdup([resourcePath UTF8String]); |
nkeynes@866 | 39 | [pool release]; |
nkeynes@866 | 40 | } |
nkeynes@866 | 41 | return bundle_resource_path; |
nkeynes@866 | 42 | } |
nkeynes@866 | 43 | |
nkeynes@866 | 44 | const char *get_sysconf_path() |
nkeynes@866 | 45 | { |
nkeynes@866 | 46 | return get_bundle_resource_path(); |
nkeynes@866 | 47 | } |
nkeynes@866 | 48 | |
nkeynes@866 | 49 | const char *get_locale_path() |
nkeynes@866 | 50 | { |
nkeynes@866 | 51 | return get_bundle_resource_path(); |
nkeynes@866 | 52 | } |
nkeynes@866 | 53 | |
nkeynes@866 | 54 | #else |
nkeynes@866 | 55 | |
nkeynes@866 | 56 | const char *get_sysconf_path() |
nkeynes@866 | 57 | { |
nkeynes@866 | 58 | return PACKAGE_CONF_DIR; |
nkeynes@866 | 59 | } |
nkeynes@866 | 60 | |
nkeynes@866 | 61 | const char *get_locale_path() |
nkeynes@866 | 62 | { |
nkeynes@866 | 63 | return PACKAGE_LOCALE_DIR; |
nkeynes@866 | 64 | } |
nkeynes@866 | 65 | |
nkeynes@866 | 66 | #endif |
.