323b65468e
Bring the changes that aren't package management related and the ones that are but don't take effect as long as they are ignored by the build system into the master. Summary of changes: * Introduce private header <directories.h> with constants for a good deal of paths that should usually be retrieved via find_directory(). * Replace hard-coded paths by using find_directory() or the <directories.h> constants (e.g. in drivers and the kernel). * Add find_directory() constants needed for package management. * Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros. * src/apps/deskbar: BeMenu.* -> DeskbarMenu.*, DeskBarUtils.* -> DeskbarUtils.* * Change deskbar menu settings directory from ~/config/be to ~/config/settings/deskbar. * Other smaller cleanups, changes, and fixes.
150 lines
3.9 KiB
C++
150 lines
3.9 KiB
C++
/*
|
|
* Copyright 2002-2009, Haiku Inc. All Rights Reserved.
|
|
* Distributed under the terms of the MIT License.
|
|
*/
|
|
#ifndef _FIND_DIRECTORY_H
|
|
#define _FIND_DIRECTORY_H
|
|
|
|
|
|
#include <SupportDefs.h>
|
|
|
|
|
|
typedef enum {
|
|
/* Per volume directories */
|
|
B_DESKTOP_DIRECTORY = 0,
|
|
B_TRASH_DIRECTORY,
|
|
|
|
/* System directories */
|
|
B_SYSTEM_DIRECTORY = 1000,
|
|
B_SYSTEM_ADDONS_DIRECTORY = 1002,
|
|
B_SYSTEM_BOOT_DIRECTORY,
|
|
B_SYSTEM_FONTS_DIRECTORY,
|
|
B_SYSTEM_LIB_DIRECTORY,
|
|
B_SYSTEM_SERVERS_DIRECTORY,
|
|
B_SYSTEM_APPS_DIRECTORY,
|
|
B_SYSTEM_BIN_DIRECTORY,
|
|
B_SYSTEM_DOCUMENTATION_DIRECTORY = 1010,
|
|
B_SYSTEM_PREFERENCES_DIRECTORY,
|
|
B_SYSTEM_TRANSLATORS_DIRECTORY,
|
|
B_SYSTEM_MEDIA_NODES_DIRECTORY,
|
|
B_SYSTEM_SOUNDS_DIRECTORY,
|
|
B_SYSTEM_DATA_DIRECTORY,
|
|
B_SYSTEM_DEVELOP_DIRECTORY,
|
|
B_SYSTEM_PACKAGES_DIRECTORY,
|
|
B_SYSTEM_HEADERS_DIRECTORY,
|
|
|
|
/* Common directories, shared among all users. */
|
|
B_COMMON_DIRECTORY = 2000,
|
|
B_COMMON_SYSTEM_DIRECTORY,
|
|
B_COMMON_ADDONS_DIRECTORY,
|
|
B_COMMON_BOOT_DIRECTORY,
|
|
B_COMMON_FONTS_DIRECTORY,
|
|
B_COMMON_LIB_DIRECTORY,
|
|
B_COMMON_SERVERS_DIRECTORY,
|
|
B_COMMON_BIN_DIRECTORY,
|
|
B_COMMON_ETC_DIRECTORY,
|
|
B_COMMON_DOCUMENTATION_DIRECTORY,
|
|
B_COMMON_SETTINGS_DIRECTORY,
|
|
B_COMMON_DEVELOP_DIRECTORY,
|
|
B_COMMON_LOG_DIRECTORY,
|
|
B_COMMON_SPOOL_DIRECTORY,
|
|
B_COMMON_TEMP_DIRECTORY,
|
|
B_COMMON_VAR_DIRECTORY,
|
|
B_COMMON_TRANSLATORS_DIRECTORY,
|
|
B_COMMON_MEDIA_NODES_DIRECTORY,
|
|
B_COMMON_SOUNDS_DIRECTORY,
|
|
B_COMMON_DATA_DIRECTORY,
|
|
B_COMMON_CACHE_DIRECTORY,
|
|
B_COMMON_PACKAGES_DIRECTORY,
|
|
B_COMMON_HEADERS_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_ADDONS_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_TRANSLATORS_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_MEDIA_NODES_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_BIN_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_DATA_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_FONTS_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_SOUNDS_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_DOCUMENTATION_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_LIB_DIRECTORY,
|
|
B_COMMON_NONPACKAGED_HEADERS_DIRECTORY,
|
|
|
|
/* User directories. These are interpreted in the context
|
|
of the user making the find_directory call. */
|
|
B_USER_DIRECTORY = 3000,
|
|
B_USER_CONFIG_DIRECTORY,
|
|
B_USER_ADDONS_DIRECTORY,
|
|
B_USER_BOOT_DIRECTORY,
|
|
B_USER_FONTS_DIRECTORY,
|
|
B_USER_LIB_DIRECTORY,
|
|
B_USER_SETTINGS_DIRECTORY,
|
|
B_USER_DESKBAR_DIRECTORY,
|
|
B_USER_PRINTERS_DIRECTORY,
|
|
B_USER_TRANSLATORS_DIRECTORY,
|
|
B_USER_MEDIA_NODES_DIRECTORY,
|
|
B_USER_SOUNDS_DIRECTORY,
|
|
B_USER_DATA_DIRECTORY,
|
|
B_USER_CACHE_DIRECTORY,
|
|
B_USER_PACKAGES_DIRECTORY,
|
|
B_USER_HEADERS_DIRECTORY,
|
|
B_USER_NONPACKAGED_DIRECTORY,
|
|
B_USER_NONPACKAGED_ADDONS_DIRECTORY,
|
|
B_USER_NONPACKAGED_TRANSLATORS_DIRECTORY,
|
|
B_USER_NONPACKAGED_MEDIA_NODES_DIRECTORY,
|
|
B_USER_NONPACKAGED_BIN_DIRECTORY,
|
|
B_USER_NONPACKAGED_DATA_DIRECTORY,
|
|
B_USER_NONPACKAGED_FONTS_DIRECTORY,
|
|
B_USER_NONPACKAGED_SOUNDS_DIRECTORY,
|
|
B_USER_NONPACKAGED_DOCUMENTATION_DIRECTORY,
|
|
B_USER_NONPACKAGED_LIB_DIRECTORY,
|
|
B_USER_NONPACKAGED_HEADERS_DIRECTORY,
|
|
|
|
/* Global directories. */
|
|
B_APPS_DIRECTORY = 4000,
|
|
B_PREFERENCES_DIRECTORY,
|
|
B_UTILITIES_DIRECTORY,
|
|
B_PACKAGE_LINKS_DIRECTORY,
|
|
|
|
/* Obsolete: Legacy BeOS definition to be phased out */
|
|
B_BEOS_DIRECTORY = 1000,
|
|
B_BEOS_SYSTEM_DIRECTORY,
|
|
B_BEOS_ADDONS_DIRECTORY,
|
|
B_BEOS_BOOT_DIRECTORY,
|
|
B_BEOS_FONTS_DIRECTORY,
|
|
B_BEOS_LIB_DIRECTORY,
|
|
B_BEOS_SERVERS_DIRECTORY,
|
|
B_BEOS_APPS_DIRECTORY,
|
|
B_BEOS_BIN_DIRECTORY,
|
|
B_BEOS_ETC_DIRECTORY,
|
|
B_BEOS_DOCUMENTATION_DIRECTORY,
|
|
B_BEOS_PREFERENCES_DIRECTORY,
|
|
B_BEOS_TRANSLATORS_DIRECTORY,
|
|
B_BEOS_MEDIA_NODES_DIRECTORY,
|
|
B_BEOS_SOUNDS_DIRECTORY,
|
|
B_BEOS_DATA_DIRECTORY,
|
|
} directory_which;
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* C interface */
|
|
|
|
status_t find_directory(directory_which which, dev_t volume, bool createIt,
|
|
char* pathString, int32 length);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
|
|
/* C++ interface */
|
|
|
|
class BVolume;
|
|
class BPath;
|
|
|
|
status_t find_directory(directory_which which, BPath* path,
|
|
bool createIt = false, BVolume* volume = NULL);
|
|
|
|
#endif /* __cplusplus */
|
|
|
|
#endif /* _FIND_DIRECTORY_H */
|