Commit Graph

157 Commits

Author SHA1 Message Date
Oliver Tappe
8cdc273ad3 Build fix part 1: update generic fs-attr code 2011-11-25 21:56:27 +01:00
Ingo Weinhold
085f6723a4 Fix build due to <directories.h> move
Apparently I should have done a complete rebuild after moving
directories.h from headers/private/libroot to .../system, since a lot of
stuff didn't build anymore.
2011-11-25 06:19:50 +01:00
Ingo Weinhold
26265b7b4d Add class BPackageInfoContentHandler
A BPackageContentHandler subclass that initializes a BPackageInfo from
the read package attributes. Pulled out of RepositoryWriterImpl's
PackageContentHandler.
2011-11-25 06:19:48 +01:00
Ingo Weinhold
e35a99be4c Pull class BPackageInfoSet out of BRepositoryCache 2011-11-25 06:19:47 +01:00
Ingo Weinhold
7de6af25e9 Add a BStringList class 2011-11-25 06:19:45 +01:00
Ingo Weinhold
ad07ecd821 BString::Private class to access BString internals 2011-11-25 06:19:45 +01:00
Ingo Weinhold
55bc371993 Wrap POSIX FD functions in libroot_build
This makes opening symlinks work universally in the build system tools.
Two mechanisms have been implemented, both of which don't always work.
The first is remapping via preprocessor macros. This fails where equally
named methods are used (e.g. STL fstream::open()). The other is using
hidden functions in the new libroot_build_function_remapper.a that is
linked into everything that is linked against libroot_build.so. This one
fails for functions that are defined inline in headers (Linux/glibc does
that). Together they seem to cover our build system needs ATM.
2011-11-25 06:18:41 +01:00
Ingo Weinhold
0fbcad54be Add helper is_unknown_or_system_descriptor() 2011-11-25 06:18:40 +01:00
Ingo Weinhold
640b4ed97d _kern_read_link() ignored the path 2011-11-25 06:18:40 +01:00
Ingo Weinhold
870d5c92fe write_pos(): Fix return value for attribute writes 2011-11-25 06:17:39 +01:00
Ingo Weinhold
2cce5a0a05 fs_write_attr(): Allow 0-length NULL buffer 2011-11-25 06:17:38 +01:00
Ingo Weinhold
fab5eddca9 Split package kit DataReader.cpp
Pull AttributeDataReader and FDDataReader implementations out of
DataReader.cpp into own source files. Thus we can avoid dependencies
(e.g. to fs_attr code) we don't need/want.
2011-11-25 06:17:37 +01:00
Ingo Weinhold
7162cff6b0 <build>package: attribute iteration, license dir
PackageWriterImpl:
* Iterate through attributes using fs_read_attr_dir() instead of
  readdir(). Makes it work correctly on the build platform.
* On the build platform look up the system licenses in their source
  directory rather than based on find_directory().
2011-11-25 06:17:36 +01:00
Ingo Weinhold
06cdc7e6d9 libroot_build: fix error.ccp build
Since USES_BE_API is set by default on all libroot_build sources, the
error.cpp
was broken, since it wouldn't be exempt from the error mapping. Define
the
BUILDING_HAIKU_ERROR_MAPPER for it directly in the Jamfile, now.
2011-11-25 06:17:35 +01:00
Ingo Weinhold
7ed37afaba Build libpackage for the build platform 2011-11-25 06:17:34 +01:00
Ingo Weinhold
c4b463c5cd Added several APIs to libbe_build/libshared_build 2011-11-25 06:17:33 +01:00
Ingo Weinhold
d9516a06cc Open/close attribute support for xattrs backend
For the xattr/BSD (untyped) attribute backend implement fs_fopen_attr()
and fs_close_attr(). A new AttributeDescriptor is created. It is
currently used in write_pos() only.
2011-11-25 06:17:32 +01:00
Ingo Weinhold
b19dacd077 Added driver settings and find_directory() support.
find_directory() is a very simplified implementation, only supporting
what we currently need.
2011-11-25 06:17:31 +01:00
Ingo Weinhold
287243ab5f Added very simple BLooper class to libbe_build. 2011-11-25 06:17:27 +01:00
Ingo Weinhold
5b0ecc5fd1 Make sure headers/build is in the include paths, so that the Haiku counterparts
most headers refer to can be found. Fixes the build under Haiku (ticket #7688).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-15 01:20:20 +00:00
Ingo Weinhold
4cc4f7bb18 * Added KMessage to libroot_build.
* libbe_build: Where possible we directly use the actual Haiku headers and
  sources, now. In the headers/build headers we just include the respective
  Haiku headers as needed. That still allows overrides where necessary. The
  intention is to make it easier to keep the build stuff in sync.
* Fixed a few printf() format and signed/unsigned comparison warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 11:42:49 +00:00
Ingo Weinhold
07cadb8481 Make use of the UsePrivateBuildHeaders rule.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42164 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-06-14 00:51:52 +00:00
Jonas Sundström
212e4c4243 Jamfile changes to make <build>mimeset pick up headers/build/os/storage/AppFileInfo.h rather than the one in /boot/develop/headers on a BeOS-compatible host. This enables use of BAppFileInfo::Get/SetCatalogEntry() in <build>mimeset. Thanks Ingo!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-09 13:18:34 +00:00
Jonas Sundström
82e7ef6709 Add app filename localization catalog entry support to BAppFileInfo, registrar and mimeset. Need help to understand why the build-version of UpdateMimeInfoThread.cpp does not compile with the added code, currently commented out. Sorry about the arbitrary B_MIME_TYPE_LENGTH*3. Advice and review welcome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-07 15:14:46 +00:00
Oliver Tappe
8a990d5228 Part of fixing #7226:
* the libbe_build version of BString was broken, at least with respect
  to LockBuffer() on an empty string - replaced the implementation and
  header with our current version (keeping the type-related changes
  required by the build-version)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-16 10:13:12 +00:00
Adrien Destugues
5098ba1b94 Update ICU to 4.4
* Remove 4.2 sourcecode
 * ICU is now an optional package (mandatory)
 * Adjust the namespaces and libraries names where needed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37498 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-13 19:04:40 +00:00
Axel Dörfler
a3b42949e5 * Fixed sub-directory mix-up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-20 13:11:24 +00:00
Axel Dörfler
4dfce2e401 * We cannot include the SystemKeymap.h with the tool that is supposed to
generate it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-20 12:38:41 +00:00
Axel Dörfler
910f10f2fc * Added libshared_build.a, currently only contains Keymap.cpp.
* keymap and <build>keymap are now using the BKeymap class as a base as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-20 08:17:07 +00:00
Axel Dörfler
624693f0c8 * Added the BFileIO class to libbe_build.so.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-20 08:13:57 +00:00
Oliver Tappe
72a85c3147 * <build>libicu-i18n.so has no use for libbe_build, it just depends on libroot_build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-27 19:34:48 +00:00
Axel Dörfler
880de4501c * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-26 16:04:23 +00:00
Ingo Weinhold
41975f20f0 Fixed gcc 4 32 and 64 bit warnings in the libbe_build code. This time ported
them back to the Haiku versions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 21:52:43 +00:00
Ingo Weinhold
eb3cef886e Accidentally removed with the previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 21:35:43 +00:00
Ingo Weinhold
7870a9ffc7 Updated the messaging related build platform code with the current Haiku
version.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 21:34:59 +00:00
Ingo Weinhold
4d8a54be0d Updated the resources support with the unmodified Haiku version.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 17:19:14 +00:00
Ingo Weinhold
a8a03488b1 * Don't even try to use the BeOS compatible types on the build platform.
That's just leading to problems.
* Fixed various 64 bit warnings when building libbe_build.so. One of the more
  serious issues, that might bite us, is that 64 bit Linux defines dev_t to
  unsigned long, while Haiku code assumes that it is signed and 32 bit. We'll
  see...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 23:36:10 +00:00
Ingo Weinhold
b23206b6e4 * Fixed operator<<() versions clashing with 64 bit compilers.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 22:55:52 +00:00
Ingo Weinhold
d1b0d5a4af Removed unused files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 22:29:48 +00:00
Ingo Weinhold
b5a20f9d11 Removed headers and sources not needed for build platform version for libbe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 18:59:40 +00:00
Ingo Weinhold
452edf50c3 Fixed warning when building with 64 bit compiler.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-23 19:35:58 +00:00
Rene Gollent
dcf2d82498 Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-18 23:29:32 +00:00
Oliver Tappe
75f1522155 * reintegrated gsoc-locale-kit branch into trunk - there's more
work to do, but it's about time to give this code more exposure.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-18 22:23:34 +00:00
Ingo Weinhold
b1c06fc64a Patch by Vincent Duvert: Added support for BSDish xattrs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32841 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-30 23:54:04 +00:00
Bruno G. Albuquerque
83a23fd38b - Fix build.
- Remove unused file.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32831 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-30 13:57:58 +00:00
Ingo Weinhold
d34f83c2cd Rather use <sys/xattr.h>. <attr/xattr.h> belongs to libattr, which we don't
need.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-30 13:44:16 +00:00
Michael Lotz
63d557f06f Fixing random GCC4 warnings. Mostly missing consts, some parentheses, some braces... Should all be harmless and not change anything.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-16 02:42:03 +00:00
Jérôme Duval
0aab2caf8e fixed usage of char* when const char* is expected, reported by ziomatto
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-30 11:10:23 +00:00
Michael Lotz
b962e48498 _kern_open_parent_dir has different semantics for the supplied name argument.
It's supposed to be filled with the entry name of the directory and not as in
all the other cases used as a leaf name to be appended to the dir. This would
lead to some errors with operations based on directory fds in the build libroot
and build libbe and in the end make generate_attribute_stores fail on platforms
that don't have an 0 initialized stack (since the supplied name buffer would
contain garbage later attached to the directory path).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 21:10:02 +00:00
Ingo Weinhold
bc3955fea5 Preparations for removing __BEOS__ from the compiler defines.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-23 21:46:26 +00:00