Ingo Weinhold
97aabbede9
Add BLowLevelPackageContentHandler section hooks
...
* Add hooks HandleSectionStart() and HandleSectionEnd(). They are
invoked to bracket package file section, so the handler can
discriminate which section the attributes belong to.
HandleSectionStart() features a return parameter _handleSection, which
allows to handler to pick which sections it wants to handle.
* "package dump" does now print the section names.
2011-07-17 16:54:55 +02:00
Ingo Weinhold
b3211314fc
Define IDs for package section
2011-07-17 16:54:54 +02:00
Ingo Weinhold
fce74facea
Add Array.h and RangeArray.h build headers
2011-07-17 16:54:54 +02:00
Ingo Weinhold
85759ab92f
Add RangeArray utility class
...
Templatized class for managing a set of sorted non-overlapping integer
ranges. Merges and splits ranges as necessary.
2011-07-17 16:54:54 +02:00
Ingo Weinhold
5518472255
Declare Array destructor inline
2011-07-17 16:54:54 +02:00
Ingo Weinhold
eb601f803e
Move Debugger's Array class to headers/shared
2011-07-17 16:54:53 +02:00
Ingo Weinhold
ffa2b2104b
PackageWriterImpl::_AddEntry(): Improve output
...
Print the relative path instead of only the leaf name.
2011-07-17 16:54:53 +02:00
Ingo Weinhold
82af91fb0e
SubPathAdder: Check for overflows, omit initial /
2011-07-17 16:54:53 +02:00
Ingo Weinhold
697b9545b1
BLowLevelPackageContentHandler interface extension
...
HandleAttributeDone(): Add parentToken parameter.
2011-07-17 16:54:53 +02:00
Ingo Weinhold
285f4a321a
Remove debug output
2011-07-17 16:54:53 +02:00
Ingo Weinhold
52232dbf43
Print relative paths in error messages
2011-07-17 16:54:52 +02:00
Ingo Weinhold
4796acbc8c
Support for extracting only specified entries
2011-07-17 16:54:52 +02:00
Ingo Weinhold
5845e79169
Missing include
2011-07-17 16:54:52 +02:00
Ingo Weinhold
4f5d405e34
Add package extract -i option
...
Allows to specify an alternate location for the .PackageInfo.
2011-07-17 16:54:52 +02:00
Ingo Weinhold
55191c9ac9
Remove debug output
2011-07-17 16:54:51 +02:00
Ingo Weinhold
32081667b1
Make use of package create -i option
2011-07-17 16:54:51 +02:00
Ingo Weinhold
6707be5403
Add create -i option for specifying a package info
2011-07-17 16:54:51 +02:00
Ingo Weinhold
4512e8d566
Add optional FD parameter to AddEntry()
...
If a FD is specified, instead of using the file with the given the FD is
used. Allows for adding entries without first copying them into the
directory structure.
2011-07-17 16:54:51 +02:00
Ingo Weinhold
bfbb410d1a
BPackageInfo::ReadFromConfigFile() BFile& version
2011-07-17 16:54:50 +02:00
Ingo Weinhold
5b486787aa
Improve FileDescriptorCloser
...
* Add SetTo()/Unset() methods and no-argument constructor.
* Detach() returns the FD now.
2011-07-17 16:54:50 +02:00
Ingo Weinhold
4cf5f9293f
Cleanup
2011-07-17 16:54:50 +02:00
Ingo Weinhold
fd0e9e33d0
Fix bison hpkg package name
2011-07-17 16:54:50 +02:00
Ingo Weinhold
dfa6888fb2
Remove InstallCommonPackage rule
2011-07-17 16:54:49 +02:00
Ingo Weinhold
00043b5320
Use InstallOptionalHaikuImagePackage for gcc too
2011-07-17 16:54:49 +02:00
Ingo Weinhold
57af748920
Also mount "common" packagefs on boot
2011-07-17 16:54:49 +02:00
Ingo Weinhold
b0533d66a7
Add missing "cache" shine-through directory
2011-07-17 16:54:49 +02:00
Ingo Weinhold
80399d67d3
Don't create empty non-writable common directories
2011-07-17 16:54:48 +02:00
Ingo Weinhold
78c665f2c3
lpe symlink is in the pe package now
2011-07-17 16:54:48 +02:00
Ingo Weinhold
075913f32d
Move gutenprint data files to system
2011-07-17 16:54:48 +02:00
Ingo Weinhold
a6e73cb9e8
Remove installoptionalpackage
2011-07-17 16:54:48 +02:00
Ingo Weinhold
bd530a0800
Remove the build platform work-arounds
2011-07-17 16:54:48 +02:00
Ingo Weinhold
e954868b70
Disable function remapping via macros
...
STL fstream::open() is used, so the macros break the build.
2011-07-17 16:54:47 +02:00
Ingo Weinhold
4dbc245798
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-07-17 16:54:47 +02:00
Ingo Weinhold
18d457f8b2
Add helper is_unknown_or_system_descriptor()
2011-07-17 16:54:47 +02:00
Ingo Weinhold
775b8d7afd
_kern_read_link() ignored the path
2011-07-17 16:54:47 +02:00
Ingo Weinhold
d3deb18a2d
Repackage default optional packages as hpkg files
2011-07-17 16:54:46 +02:00
Ingo Weinhold
64b8c37680
Move post install files to system package
2011-07-17 16:54:46 +02:00
Ingo Weinhold
df18eb8718
Fix gcc 2 build by making Parser a friend
2011-07-17 16:54:46 +02:00
Ingo Weinhold
1ef35574eb
package extract: Delay setting node permissions
...
In HandleEntry() create the file/directory with sufficient permissions
for the user and set the archived permissions in HandleEntryDone(). This
makes sure child attributes and entries can be created.
2011-07-17 16:54:46 +02:00
Ingo Weinhold
1bcc0f6e4a
.OPD -> .PackageInfo conversion tool
2011-07-17 16:54:46 +02:00
Ingo Weinhold
116852fecb
Support package info [source] URL attributes
2011-07-17 16:54:45 +02:00
Ingo Weinhold
28268808d8
Change source URL package info attribute name
...
Use "-" instead of "_".
2011-07-17 16:54:45 +02:00
Ingo Weinhold
d4701a2921
Simplify BPackageInfo::Parser::_Parse() further
...
* Match the attribute in a loop, use an attribute ID switch, do the
"seen" checks without the switch.
* Explicitly handle the case when encountering an unknown attribute.
2011-07-17 16:54:45 +02:00
Ingo Weinhold
122597e0ba
Simplify BPackageInfo::Parser::_Parse()
...
This also fixes the memory leak due to the previously used on-stack
BObjectLists not having been defined owning the elements.
2011-07-17 16:54:45 +02:00
Ingo Weinhold
8b684dd363
Add URL/source URL hpkg package attributes
2011-07-17 16:54:44 +02:00
Ingo Weinhold
ee453e8bbc
Add url and sourceURL properties to BPackageInfo
...
Also extend the parser to accept "url" and "source-url" attributes.
2011-07-17 16:54:44 +02:00
Ingo Weinhold
430689a688
Move hpkgBaseURL definition before its first use
2011-07-17 16:54:44 +02:00
Ingo Weinhold
941ec45913
Don't include architecture in package links names
...
This reverts commit a491e591c86cec4b2ce52df86f7b0d32545b4169.
2011-07-17 16:54:44 +02:00
Ingo Weinhold
1feaa8ab7e
Adjust to changed .PackageInfo format
2011-07-17 16:54:43 +02:00
Ingo Weinhold
91698de994
Make .PackageInfo more driver-settings-ish
...
* Use braces instead of brackets for lists.
* Semicolons and newlines separate items now. Remove handling for comma.
* Allow '\'' as quotation character.
* Remove assignment after variable name.
This should make the .PackageInfo format driver settings compatible, but
not vice versa. It is still stricter.
2011-07-17 16:54:43 +02:00