blob: 3c3c8edc9aac356171164f4bcca94f47af17d299 [file] [log] [blame]
jhawkins@chromium.org8e73d062011-04-05 03:04:37 +09001// Copyright (c) 2011 The Chromium Authors. All rights reserved.
license.botf003cfe2008-08-24 09:55:55 +09002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
initial.commit3f4a7322008-07-27 06:49:38 +09004
erikkay@google.com9fc57d02008-08-09 05:16:08 +09005#ifndef BASE_BASE_PATHS_H_
6#define BASE_BASE_PATHS_H_
thakis@chromium.org01d14522010-07-27 08:08:24 +09007#pragma once
initial.commit3f4a7322008-07-27 06:49:38 +09008
9// This file declares path keys for the base module. These can be used with
10// the PathService to access various special directories and files.
11
jhawkins@chromium.org8e73d062011-04-05 03:04:37 +090012#include "build/build_config.h"
13
erikkay@google.com9fc57d02008-08-09 05:16:08 +090014#if defined(OS_WIN)
erikkay@google.comc7980ee2008-08-06 04:46:31 +090015#include "base/base_paths_win.h"
erikkay@google.com9fc57d02008-08-09 05:16:08 +090016#elif defined(OS_MACOSX)
17#include "base/base_paths_mac.h"
erikkay@google.comc7980ee2008-08-06 04:46:31 +090018#endif
19
initial.commit3f4a7322008-07-27 06:49:38 +090020namespace base {
21
22enum {
23 PATH_START = 0,
24
25 DIR_CURRENT, // current directory
26 DIR_EXE, // directory containing FILE_EXE
27 DIR_MODULE, // directory containing FILE_MODULE
initial.commit3f4a7322008-07-27 06:49:38 +090028 DIR_TEMP, // temporary directory
evan@chromium.orgc1365092009-11-21 10:29:00 +090029 FILE_EXE, // Path and filename of the current executable.
30 FILE_MODULE, // Path and filename of the module containing the code for the
31 // PathService (which could differ from FILE_EXE if the
32 // PathService were compiled into a shared object, for example).
33 DIR_SOURCE_ROOT, // Returns the root of the source tree. This key is useful
34 // for tests that need to locate various resources. It
35 // should not be used outside of test code.
thestig@chromium.org5813f9d2009-12-03 10:07:12 +090036#if defined(OS_POSIX)
viettrungluu@chromium.org366266c2010-11-24 11:23:15 +090037 DIR_CACHE, // Directory where to put cache data. Note this is
38 // *not* where the browser cache lives, but the
39 // browser cache can be a subdirectory.
40 // This is $XDG_CACHE_HOME on Linux and
41 // ~/Library/Caches on Mac.
thestig@chromium.orgeea83062009-12-02 17:45:01 +090042#endif
evan@chromium.orgc1365092009-11-21 10:29:00 +090043
initial.commit3f4a7322008-07-27 06:49:38 +090044 PATH_END
45};
46
47} // namespace base
48
erikkay@google.com9fc57d02008-08-09 05:16:08 +090049#endif // BASE_BASE_PATHS_H_