Commit Graph

40144 Commits

Author SHA1 Message Date
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
Ingo Weinhold
7e346f1677 Include architecture in package links dir names 2011-07-17 16:54:43 +02:00
Ingo Weinhold
ba926f3554 Extract architecture from package file 2011-07-17 16:54:43 +02:00
Ingo Weinhold
eadc3c844d Add architecture property to Package 2011-07-17 16:54:42 +02:00
Ingo Weinhold
2ec6e02711 Small cleanup 2011-07-17 16:54:42 +02:00
Ingo Weinhold
36145114ae Adjust "copyright"/"licenses" fields
Use the plural keyword name and omit brackets when only one element is
specified.
2011-07-17 16:54:42 +02:00
Ingo Weinhold
78ceed5122 Allow single-element string/flag lists without []
As syntactic sugar string and flag lists no longer need to be enclosed
in brackets when they have exactly one element.
2011-07-17 16:54:42 +02:00
Ingo Weinhold
acdcba84ec Remove "copyright" and "license" keywords
There's "copyrights" and "licenses" which can be used.
2011-07-17 16:54:41 +02:00
Ingo Weinhold
ba1bc0a4ff Small cleanup 2011-07-17 16:54:41 +02:00
Ingo Weinhold
2ae9a147ca Declare the system package as backwards compatible 2011-07-17 16:54:41 +02:00
Ingo Weinhold
89f1807be6 Add compatible version support to packagefs 2011-07-17 16:54:40 +02:00
Ingo Weinhold
71120ca73d Print the resolvables' compatible version 2011-07-17 16:54:40 +02:00
Ingo Weinhold
ee9c9351a7 Support for reading compatible version attribute 2011-07-17 16:54:40 +02:00
Ingo Weinhold
b2709d8a0a Write resolvable compatible version to the package
To avoid a clash with the regular version or an extra attribute level we
use the "package:provides.compatible" package attribute instead of
"package:version.major".
2011-07-17 16:54:39 +02:00
Ingo Weinhold
2db69df113 Support for parsing the compatible version
In the .PackageInfo the compatible version for a resolvable can
optionally be given after the resolvable version via
"'compat[ible]' '>=' <version>".
2011-07-17 16:54:39 +02:00
Ingo Weinhold
22e1ec0e30 Add package attribute for compatible version 2011-07-17 16:54:38 +02:00
Ingo Weinhold
c2f56ca020 BPackageResolvable: Add compatibleVersion property 2011-07-17 16:54:38 +02:00
Ingo Weinhold
3a56aaeeb9 BPackageResolvableData: Compatible version field
Add fields haveCompatibleVersion and compatibleVersion. This allows us
to have a minimum version a resolvable is backwards compatible with.
2011-07-17 16:54:38 +02:00