Commit 1dc61f81 authored by Adrien Destugues's avatar Adrien Destugues Committed by Brad King
Browse files

Haiku: Remove use of B_COMMON_DIRECTORY



The common directory was removed in Haiku. Applications are now
installed in the system directory.
Applied-by: Rolf Eike Beer's avatarRolf Eike Beer <eike@sf-mail.de>
parent 7ebc1cb2
......@@ -26,7 +26,8 @@
#include <algorithm>
#if defined(__HAIKU__)
#include <StorageKit.h>
#include <FindDirectory.h>
#include <StorageDefs.h>
#endif
//----------------------------------------------------------------------
......@@ -1263,14 +1264,14 @@ const char* cmCPackGenerator::GetInstallPath()
this->InstallPath += "-";
this->InstallPath += this->GetOption("CPACK_PACKAGE_VERSION");
#elif defined(__HAIKU__)
BPath dir;
if (find_directory(B_COMMON_DIRECTORY, &dir) == B_OK)
char dir[B_PATH_NAME_LENGTH];
if (find_directory(B_SYSTEM_DIRECTORY, -1, false, dir, sizeof(dir)) == B_OK)
{
this->InstallPath = dir.Path();
this->InstallPath = dir;
}
else
{
this->InstallPath = "/boot/common";
this->InstallPath = "/boot/system";
}
#else
this->InstallPath = "/usr/local/";
......
......@@ -20,7 +20,8 @@
#include "cmExportBuildFileGenerator.h"
#if defined(__HAIKU__)
#include <StorageKit.h>
#include <FindDirectory.h>
#include <StorageDefs.h>
#endif
cmExportCommand::cmExportCommand()
......@@ -316,14 +317,15 @@ void cmExportCommand::StorePackageRegistryDir(std::string const& package,
const char* hash)
{
#if defined(__HAIKU__)
BPath dir;
if (find_directory(B_USER_SETTINGS_DIRECTORY, &dir) != B_OK)
char dir[B_PATH_NAME_LENGTH];
if (find_directory(B_USER_SETTINGS_DIRECTORY, -1, false, dir, sizeof(dir)) !=
B_OK)
{
return;
}
dir.Append("cmake/packages");
dir.Append(package.c_str());
std::string fname = dir.Path();
std::string fname = dir;
fname += "/cmake/packages/";
fname += package;
#else
const char* home = cmSystemTools::GetEnv("HOME");
if(!home)
......
......@@ -19,7 +19,9 @@
#endif
#if defined(__HAIKU__)
#include <StorageKit.h>
#include <string.h>
#include <FindDirectory.h>
#include <StorageDefs.h>
#endif
void cmFindPackageNeedBackwardsCompatibility(const std::string& variable,
......@@ -1584,12 +1586,14 @@ void cmFindPackageCommand::AddPrefixesUserRegistry()
#if defined(_WIN32) && !defined(__CYGWIN__)
this->LoadPackageRegistryWinUser();
#elif defined(__HAIKU__)
BPath dir;
if (find_directory(B_USER_SETTINGS_DIRECTORY, &dir) == B_OK)
{
dir.Append("cmake/packages");
dir.Append(this->Name.c_str());
this->LoadPackageRegistryDir(dir.Path());
char dir[B_PATH_NAME_LENGTH];
if (find_directory(B_USER_SETTINGS_DIRECTORY, -1, false, dir, sizeof(dir)) ==
B_OK)
{
std::string fname = dir;
fname += "/cmake/packages/";
fname += Name;
this->LoadPackageRegistryDir(fname);
}
#else
if(const char* home = cmSystemTools::GetEnv("HOME"))
......
......@@ -37,7 +37,8 @@
#include <assert.h>
#if defined(__HAIKU__)
#include <StorageKit.h>
#include <FindDirectory.h>
#include <StorageDefs.h>
#endif
cmLocalGenerator::cmLocalGenerator()
......@@ -349,16 +350,17 @@ void cmLocalGenerator::GenerateInstallRules()
prefix = prefix_win32.c_str();
}
#elif defined(__HAIKU__)
char dir[B_PATH_NAME_LENGTH];
if (!prefix)
{
BPath dir;
if (find_directory(B_COMMON_DIRECTORY, &dir) == B_OK)
if (find_directory(B_SYSTEM_DIRECTORY, -1, false, dir, sizeof(dir))
== B_OK)
{
prefix = dir.Path();
prefix = dir;
}
else
{
prefix = "/boot/common";
prefix = "/boot/system";
}
}
#else
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment