Commit Graph

621 Commits

Author SHA1 Message Date
Ithamar R. Adema
052ef89f0f * Fixes generate_boot_screen so it can be run as part of the build environment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-23 20:59:41 +00:00
Adrien Destugues
6e608fa5fb Patch by Jorma Karvonen (#6075): translate Inspector application. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 19:10:46 +00:00
Matt Madia
7c00dc0e35 From the libpng-1.2.x-to-1.4.x-summary.txt:
m. The function png_set_gray_1_2_4_to_8() was removed. It has been
      deprecated since libpng-1.0.18 and 1.2.9, when it was replaced with
      png_set_expand_gray_1_2_4_to_8() because the former function also
      expanded palette images.
This allows generate_boot_screen to compile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 01:14:04 +00:00
Matt Madia
2e8db3436a Automatic whitespace cleanup. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 00:58:05 +00:00
Ingo Weinhold
386be45abc Fixed 64 bit warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-24 21:41:20 +00:00
Axel Dörfler
a41cc8a74b * Fixed build on the Haiku platform.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36375 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-20 16:18:39 +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
Ingo Weinhold
2d263cff46 Build fix (on 64 bit hosts).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35819 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-11 23:23:37 +00:00
Michael Lotz
aceebab740 Add a CHS conversion function. It is not used though as we can't generally make
valid CHS addresses due to not knowing the geometry of the target device
beforehand. So it's mostly just for completeness...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-02 01:22:11 +00:00
Michael Lotz
0a54a1a530 Fix missing stdint include, missing open mode flags and libsupc++ linking.
Thanks to luroh and mmadia for testing!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-28 20:49:08 +00:00
Michael Lotz
596ba08220 Well, it was a 50-50 chance to hit the portable write function... Should fix
the anyboot build tool build on non-Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-28 20:19:44 +00:00
Michael Lotz
bfa5a8db18 Adding an "anyboot" buildtool that takes a chainloading MBR, a ISO CD boot image
and a Haiku image and fuses everything to a hybrid MBR/ISO image. Since it
contains a valid MBR, partition table and el-torito CD boot record such an image
should be pretty universally bootable. It can be written to disks, USB sticks or
CDs/DVDs. Since it has a partition table in place it is also possible that it
helps with the non-booting USB sticks where the BIOS (wrongly) assumes a
partition table.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35667 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-28 18:51:16 +00:00
Ingo Weinhold
695f0b114b Moved resattr.cpp to src/bin, made it buildable for Haiku, and fixed a
warning.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-04 12:59:37 +00:00
Adrien Destugues
68effbf082 Fixed a bug in the plaintext catalog add on : in some cases the resulting catalog file was corrupt (checksum error).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34951 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-08 17:23:49 +00:00
Ingo Weinhold
59d6284b7b Changed the way the syscall infos are generated. We no longer include the
preprocessed <syscalls.h> header in sources compiled for the build platform.
Instead we're generating macros for the return type and parameter type sizes
via the CreateAsmStructOffsetsHeader rule (no template magic anymore) and
thus get a clear separation of host and target code, resulting in better
portability (although surprisingly enough the build already worked on 64 bit
hosts).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-27 21:00:37 +00:00
Ingo Weinhold
3be9edf8da Since we had completely identical arch_gensyscalls.h files for all
architectures, there's now a arch/generic/generic_gensyscalls.h which is
included by the otherwise empty arch_gensyscalls.h files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-27 17:13:30 +00:00
Ingo Weinhold
0dfceb2b8a Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-27 16:55:10 +00:00
Ingo Weinhold
4dafc3b298 Fixed 64 bit warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-26 15:47:08 +00:00
Ingo Weinhold
0bab2e8af4 Don't include HaikuBuildCompatibility.h in the [b]fs_shell build. It's not
needed -- the code has its own complete platform abstraction layer -- and
only causes problems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-26 10:14:21 +00:00
Ingo Weinhold
6236ae8570 Also include HaikuBuildCompatibility.h on a Haiku host platform and
conditionally define some of the new stuff there. That fixes the build under
a r34172 Haiku, though it also causes some problems that needed working around.
Haven't tested under newer Haiku revisions yet. Will do tomorrow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 23:48:45 +00:00
Axel Dörfler
47f5a0f86b * Build fix under Haiku (the two max() arguments had different types).
* Improved error reporting in WriteToFile().
* UpdateAttributes() was called twice in WriteToFile().
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 17:12:06 +00:00
Ingo Weinhold
cf844822db * Added B_PRIdTIME and B_PRIiTIME macros (for time_t).
* Added FSSH_[S]SIZE_MAX to headers/private/fs_shell/fssh_types.h.
* Fixed various 64 bit compiler warnings. Nothing too serious, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 12:02:20 +00:00
Axel Dörfler
23f179da55 * Cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 11:48:39 +00:00
Ingo Weinhold
d91159f6b2 Build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 09:43:33 +00:00
Rene Gollent
bf0f20ea81 Fix build error on 32-bit host platform (no function max(int, long int)). I unfortunately can't verify if this works or fails on a 64-bit host though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-25 00:42:58 +00:00
Ingo Weinhold
bdfce0e900 Define __STDC_FORMAT_MACROS directly in HOST_DEFINES.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 20:19:08 +00:00
Ingo Weinhold
2222d0559d * Introduced new header directory "config", which ATM contains HaikuConfig.h
and types.h. The idea is to provide a basic architecture/compiler
  abstraction by defining types and macros that allow the posix/ and os/
  headers to be mostly architecture/compiler agnostic. 
* Adjusted the posix/ and os/ headers accordingly.
* <SupportDefs.h>: Introduced B_PRI* and B_SCN* macros similar to the PRI*
  and SCN* macros defined in <inttypes.h>, just for the BeOS/Haiku [u]int*
  types and some POSIX types (e.g. off_t, dev_t, ino_t) that don't have POSIX
  macros. Also the B_PRI* and B_SCN* macros are available unconditionally,
  unlike the <inttypes.h> macros, which require __STDC_FORMAT_MACROS to be
  defined in C++ mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 19:44:07 +00:00
Ingo Weinhold
1111c840c7 Moving the bfs_fuse build into another directory would probably be the way to
go, but for the time being at least don't cause the BFS sources to be compiled
twice regardless of which target is built.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-24 12:08:45 +00:00
Alexandre Deckner
2ec4a3b13f * Use os.path.walk to visit directories
* Use \w instead of [a-zA-Z0-9] in some regex's
* Add switch to the "space after control statement" rule
* Added pointer/reference style rule


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-06 15:55:44 +00:00
Ingo Weinhold
239222b236 * Moved everything into the SymbolPatcher namespace.
* Several fixes to get things building with gcc 4.
* Changed lookup of the _GLOBAL_OFFSET_TABLE_ symbol. It is hidden and static
  and get_image_symbol() doesn't find it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:16:17 +00:00
Alexandre Deckner
ae762f316d * Add multi file/directory support
* Refined some rules to not include the new-line
* Added 'windows line ending' rule
* Enhanced the html output, not an expert there though



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 03:23:50 +00:00
Alexandre Deckner
ef2927b12c * Use <span> for the highlights
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-01 18:13:29 +00:00
Alexandre Deckner
214f735e34 * Style checker for the Haiku C++ coding guidelines
* Added an html report output with highlights and tooltips
* Still a few false positives and rules missing. Some regex could be reworked
* TODO: ignore some rules when in comments, multifile support



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33856 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-31 22:20:25 +00:00
Axel Dörfler
234d8e02b7 * Added ioctl command to quickly access some debug functionality in an FS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-20 00:18:32 +00:00
Oliver Tappe
571d840abf * dropped svn:keywords property from all files that carried it
to avoid recurring problems during migration of subversion checkouts
  (restored binary files that were garbled by subversions during checkout)
* added appropriate svn:mime-type property for problematic (binary) files
* removed a single (mistyped) svn:mimetype property 
* dropped svn:eol-style property for cleanup (they all contained 'native')



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-19 22:42:52 +00:00
Axel Dörfler
31cce05240 * Removed useless tool.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-12 13:42:00 +00:00
François Revol
30580df348 The checksum should be inverted.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-11 20:48:43 +00:00
François Revol
e6f2508262 A tool to calculate Amiga bootsector checksums.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-11 20:26:39 +00:00
François Revol
1631cac3e3 Cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-11 20:25:45 +00:00
Ingo Weinhold
7f16b78c41 Moved vmdkimage.h to a shareable place, cleaned it up a bit, and renamed it to
vmdk.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33387 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 03:08:46 +00:00
Ingo Weinhold
d6778355ee * <DiskDeviceTypes.h>: Removed kPartitionTypeIntel{Primary,Logical} constants.
* Added new header headers/private/system/disk_device_types.h, which defines
  the <DiskDeviceTypes.h> constants as macros and which can be used where the
  constants cannot be used. The constants are defined using the macros, so now
  there's only one place where the string literals should be specified.
* Use the macros in the partitioning systems. I was too lazy to also adjust the
  file systems -- most of them seem to hard-code the string literal yet.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33386 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-10-01 03:07:42 +00:00
Adrien Destugues
691922477c Patch by StoroZ Gneva : fix all russian translations (used the wrong encoding the first time)
Patch by titer : fix build on PPC host by not messing up the fingerprint endianness


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-30 20:26:42 +00:00
Adrien Destugues
6bf3fe1f2e Fixed handling of \xNN in strings. This way it is possible to translate a string even if there is a B_UTF8_ELLIPSIS or some other weird char in it. Improves the bluetooth preflet translation :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-28 21:39:49 +00:00
Adrien Destugues
e6b7213cc2 -Fingerprint checking now use a simple sum of the hash values, instead of the adler32 algorithm. This allows to match a catalog even if, due to the hashmap instanciation, it is not iterated in the same order. Updated all the existing catkeys files to match this new system.
-As the fingerprint is now fully working, all catkeys fingerprints are now checked, and if they don't match, the build will fail.
-This helped find an error in the Locale Preflet french catalog. It now works again.
-Usual set of cleanups and small style fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33340 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-28 20:08:53 +00:00
Adrien Destugues
0a255c0c6a Cleanup of the locale kit tools :
-Jamrule for collectcatkeys no longer print all the strings, only a message when it can't parse one (happens for TR(variable) basically)
-Added fingerprint check in the plaintext catalog ReadFromFile. However, the adler checksum is different each time the catalog is loaded because it relies on the string being iterated always in the same order, but this is not always the case with an HashMap ! Some rethinking is needed, so disabled the check for now so it does not breaks the build
-Some try to debug the bluetooth preflet localization. Still buggy, but I wanted to commit all this mess before I break everything up again.
-Also sorted the fr.catkeys files to be in the same order as the autogenerated en.catkeys (this is useless but makes them easier to check) and updated their fingerprint even if they are still not checked.
-Miscelaneous style fixes, small bugfixes, more error checking and error messages saying where they come from.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-27 21:19:52 +00:00
Jérôme Duval
ffd46c2940 it seems these ones are already included by the build system
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-21 18:47:18 +00:00
Jérôme Duval
92cf5d389a build fix on r1a1. hopefully doesn't break other build platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-21 18:20:35 +00:00
Adrien Destugues
b254319360 -Started to localize the appearance preflet to find more locale kit bugs. It worked.
-MarkForTranslation was not scanned by collectcatkeys, improved the regexp to take it into account
-Some gristing was missing in jamrules, added a bit, still seem to miss some.
-Replaced $(var:B).ext with $(var:S=.ext) as it is the proper way in order not to loose grist and mess things up
-Removed icu include and replaced direct class nesting with pointer to avoid binary compatibility breakage on ICU updates.
-Fixed TimeFormatSettingsView to properly include needed icu things. Should not be there, actually. Needs cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-20 22:16:30 +00:00
Rene Gollent
b25f8906fb Fix build on Haiku. Some tools were missing libstdc++ and beos-compatible build platforms weren't setting the host compat lib dir at all, resulting in the icu build libs not being found.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 19:52:30 +00:00
Rene Gollent
669d9ea11c Build fixes for haiku-gcc4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 03:39:01 +00:00
Rene Gollent
605527d76a Fix build of icu tools on FreeBSD host (math symbols were not found).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-19 02:32:04 +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
Jonas Sundström
97d5f9fa3d mipsel wip
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-17 14:30:36 +00:00
François Revol
23eafdaf31 [GSoC] [ARM] Patch by Johannes Wischert.
- stubbed out many arch kernel functions (borrowed from other archs),
- partially implement ELF relocations code, enough to load the kernel,
- move uart.c to kernel sources and use the same one for the loader,
- default implementation for gensyscalls,
- assembler code functions for interrupt masking (enable/disable/restore/query).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-13 18:34:15 +00:00
Stephan Aßmus
bd000a0750 Patch by Jens Arm:
* You have to add "-d" to the bfs_fuse command line to get debug output now,
  in non-debug mode this speeds up operations a lot.
* Errors during initialization and finalization are dumped to the syslog if
  not in debug mode.

Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-27 15:26:23 +00:00
Stephan Aßmus
130e0a69f8 Patch by Jens Arm with cleanup by myself:
Implemented the statfs operation which helps to get
information like used and free blocks on the volume.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-23 13:47:29 +00:00
Ingo Weinhold
c1dd2f540d Patch by Jens Arm: Fixed swapped arguments in _kern_create_[sym]link()
invocations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-22 13:50:28 +00:00
Ingo Weinhold
5d0e14e988 Link bfs_fuse against the static host libroot.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-09 18:06:53 +00:00
Oliver Tappe
16d5c24e53 * merged 32bit-wchar_t branches of buildtools and haiku back into
the respective trunk

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-07 10:30:09 +00:00
Stephan Aßmus
88e5472450 Small coding style fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-05 10:52:38 +00:00
Stephan Aßmus
18128d58dc Patch by Raghuram Nagireddy:
Re-use the kernel emulation of the FS shell to implement a FUSE module
for BFS. In theory, it could use any Haiku file system implementation
just like the FS shell itself, but currently only the BFS code supports
being compiled as an FS shell module. The build target is <build>bfs_fuse
On Ubuntu, you would do this:

sudo apt-get install libfuse-dev
jam \<build\>bfs_fuse
mkdir path/to/moundPoint
path/to/bfs_fuse /dev/sdaX path/to/mountPoint

And that will mount your BFS volume at /dev/sdaX
read/write. As this is new code, you should be careful with your
data and expect potential data loss. Not that I don't trust Raghu's
code, but a warning is always better with such things. So far, my
tests have been successful and it is great to finally have write
support for BFS in Linux! Thanks a lot, Raghu, for your great work!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-05 10:36:30 +00:00
Axel Dörfler
c85220c63a * This fixes my last change...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-30 15:34:08 +00:00
Axel Dörfler
b6fffec7e1 * The fs_shell is now always using BLKGETSIZE64 on Linux, and only if that fails
it will fall back to HDIO_GETGEO.
* This fixes incorrectly reported disk sizes for a number of disks I have here.
  Please open a bug report if this change causes problems for you (we would then
  have to check the kernel version to choose the preferred method).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-30 15:16:50 +00:00
Axel Dörfler
1b5bab63e5 * Fixed warning.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-26 08:57:36 +00:00
Axel Dörfler
7200c6f499 * Fixed warnings.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-19 10:17:42 +00:00
Axel Dörfler
4ab3fa3b5a * Added real_time_clock(), and real_time_clock_usecs().
* Added support for timespec stat times.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 09:31:25 +00:00
Axel Dörfler
0714ea070a * Added "mv" command (BFS only, cannot access the host yet).
* Fixed warning in print_flag().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-11 18:44:16 +00:00
Jérôme Duval
e7c8829c5d strchr(const char*, ...) returns const char* in C++, identified by gcc 4.4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 20:07:43 +00:00
Michael Lotz
c26b324e20 Should fix GCC4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30853 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 21:26:54 +00:00
Ingo Weinhold
6b5090f2f6 When copying attributes only, it suffices to open the target read-only. Fixes
the image build.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-09 12:39:33 +00:00
Axel Dörfler
843ce67e3d * Don't let GuestNode::Init() fail if the attribute directory could not be
opened; not all file systems support this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30654 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-07 07:20:57 +00:00
Axel Dörfler
738ed6561d * copy_to_bfs_image is no longer needed (and doesn't compile anymore, either).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-05 17:36:57 +00:00
Oliver Tappe
58481f0f6e * fix gcc4 build of cppunit library by explicitly spelling out std:: in
the headers and importing the required classes in the implementation files
* automatic whitespace cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-02 19:04:52 +00:00
Oliver Tappe
723383c0f4 Applied patch by PulkoMandy, adjusted and extended by myself:
* integrating most of the locale kit into the build (and image)
* removed LocaleBuild.h and _IMPEXP_LOCALE since that does not make
  sense for elf (which usually exports all symbols anyway)
* added a couple of locale kit related pseudo targets for convenience
Hey, some of that stuff already seems to work :-)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-01 21:56:16 +00:00
Oliver Tappe
c3ac87e8fc * Copied imported OpenTracker Locale Kit files from the vendor branch
into their new homes (at least for now, might need some adjustment).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-01 19:23:59 +00:00
François Revol
89b87f2ba5 Fix linux build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30480 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-29 01:30:53 +00:00
François Revol
f5be3a125f Rename C file; add to the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30468 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-27 18:49:42 +00:00
François Revol
5b47f71ccb Move the checksum fixup tool where it belongs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30467 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-27 18:45:28 +00:00
Ingo Weinhold
04eb9ba18e Patch by "VinDuv" (Vincent Duvert?): Added FSShell support for devices on
MacOS X.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-21 10:21:03 +00:00
Ingo Weinhold
81f87f58ed When clearing a device we do now ignore an error when we could write anything
at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-13 23:57:12 +00:00
Ingo Weinhold
526d707eb6 Added new build tool create_image which is now used to create and/or clear a
raw image. This fixes the problem that an existing image couldn't be resized.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-12 09:18:18 +00:00
Ingo Weinhold
3cf43c2651 Removed the fs_vnode_ops::create_dir() parameter for returning the ID of the
newly created dir. The VFS really doesn't need it and for some file systems
it might not be easy to get by. Several file systems (e.g. rootfs and fat)
were ignoring the parameter anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-26 00:16:34 +00:00
Michael Lotz
49004dc730 Remove the additional fs_vnode_ops arugment from get_vnode() again as it's not
needed at all when used as intended. Thanks Ingo for the explanation on how this
is intended to work. Adjusted the overlay fs accordingly and updated/reverted
the changes to the other filesystems.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-19 18:13:01 +00:00
Michael Lotz
4b08e1b9e3 Add the host libsupc++ to generate_attribute_stores.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 17:08:05 +00:00
Michael Lotz
816f925d39 Add generate_attribute_stores to the tools using the Be API so it builds on other platforms as well.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 12:31:33 +00:00
Michael Lotz
cbaec88839 Add a generate_attribute_stores build tool. It can be used to recursively
generate attribute stores for attribute overlay. This can be used to generate
ISO only Haiku CDs with attribute support in the future. Note that while they
are mostly bootable they aren't really usable yet because of the missing query
support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-14 00:28:35 +00:00
Michael Lotz
00405f2286 * Add an additional argument to get_vnode() that gets the fs_vnode_ops of the
node. That is needed for a layered filesystem to be able to construct a full
  fs_vnode out of a volume/inode pair.
* Adapt places where get_vnode is used. Sadly this is a C API and we can't just
  use a default NULL for that argument.
* Introduce a flag B_VNODE_WANTS_OVERLAY_SUB_NODE that can be returned in the
  flags field of a fs get_vnode call. A filesystem can use this flag to indicate
  that it doesn't support the full set of fs features (attributes, write support)
  and it'd like to have unsupported calls emulated by an overlay sub node.
* Add a perliminary overlay filesystem that emulates file attributes using files
  on a filesystem where attributes aren't supported. It does currently only
  support reading attributes/attribute directories though. All other calls are
  just passed through to the super filesystem.
* Adjust places where a HAS_FS_CALL() is taken as a guarantee that the operation
  is supported. For the overlay filesystem we may later return a B_UNSUPPORTED,
  so make sure that in that case proper fallback options are taken.
* Make the iso9660 filesystem request overlay sub nodes. This can be fine tuned
  later to only trigger where there are features on a CD that need emulation
  at all.

If you happened to know the attribute file format and location you could build
an iso with read-only attribute support now. Note that this won't be enough to
get a bootable iso-only image as the query and index support is yet missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29177 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 23:06:31 +00:00
Michael Lotz
3c885c3390 Fix missing inclue.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-25 18:14:46 +00:00
Axel Dörfler
114d7934a7 * Added "info" command that prints the information of the fs_info structure.
* Shuffled functions around to separate command functions from their support
  functions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28624 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-12 12:03:58 +00:00
François Revol
21c478525f Add to the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-12 00:15:50 +00:00
François Revol
098dbd2216 A little tool to hack COFF image to make them edible by oldworld OF (seems BFD forgets to set some fields...), that was mentionned on some NetBSD mailing lists, let's see if it works...
Taken from ftp://mir1.ovh.net/lv0/ftp.kernel.org/pub/scm/linux/kernel/git/jejb/merge-tree/arch/powerpc/boot/hack-coff.c


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28618 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-11 23:53:59 +00:00
Axel Dörfler
8f1cb8fca2 * Brought the fs_shell block_cache implementation up to date, and incorporate
the fixes applied to the kernel version of it (most notably a correctly
  working block_cache_discard(), and cache_detach_sub_transaction()).
  Also switched to the new notification functions, even though it still works
  synchronously in the fs_shell.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-11 22:19:46 +00:00
Axel Dörfler
5b812019b4 * Added function block_cache_discard() that flushes blocks from the block cache,
discarding their changes. This functionality currently only works correctly
  when no transactions are used.
* Started test application for the block cache, doesn't do anything yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28496 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-04 14:49:33 +00:00
Ingo Weinhold
210553573f Patch by Artur Wyszynski: Added support for partitions in Darwin.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28404 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-31 15:56:33 +00:00
Axel Dörfler
500d847a1d * Enlarged the arbitrary maximum image size to 4 GB which still works just
fine.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-24 11:14:49 +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
Jérôme Duval
4dafc175e9 takes into account the offset used in realpath(). see bug #2895. Thanks kaliber!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-20 21:41:30 +00:00
Axel Dörfler
c709ef9805 * Changed how the string for the UUID hash is build.
* Accidently did not start at different positions in the string to build the
  hash, but just added some value to the hash...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-14 22:30:43 +00:00
Michael Lotz
4977d0be6c Fix build under BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-14 21:47:05 +00:00
François Revol
b20c4dc559 This should fix the BeOS build. Note BeOS had read_pos() way before POSIX had any pread()...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-14 19:51:52 +00:00
Axel Dörfler
700de23e38 * Added assigning an UUID to the image written; you can either pass one via the
new '-u' option, or let it generate one automatically (by building a hash over
  the full path of the image).
* This is allows you to use our images in VirtualBox without having to readd
  the hard drive with every rebuild.
* Enlarged the description section to 1024 bytes - this also prevents VirtualBox
  from writing data beyond the description size.
* Added '-d' option to just dump info about an existing vmdk image file (only
  monolithic mode is supported, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-14 17:14:29 +00:00
Rene Gollent
dfcc059e7b Fix build of tool version of makebootable on Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-13 23:27:50 +00:00
Karsten Heimrich
8e0559b5f7 * fix probable memory leaks, not in the image but anyway...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-03 11:54:05 +00:00
Ingo Weinhold
8df6a8dbf5 * Moved strace sourced to src/bin/debug/.
* Factored a few functions out of strace that can be reused.
* Added the beginnings of a "profile" command. It is very much work in
  progress, though it is already able to profile the main thread of a
  program.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-15 13:45:43 +00:00
Ingo Weinhold
034fb25c4d * The image was create one byte too short. Fixes #2722.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27472 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-13 10:04:51 +00:00
Ingo Weinhold
ee1a1571a2 Implemented a simple directory entry cache to speed up path resolution.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27366 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-08 05:08:37 +00:00
Ingo Weinhold
b0b6878c97 <sys/ioctl.h> also seems to be the standard Linux place for the
ioctl() prototype. Apparently some Linuxes discarded the <stropts.h>
header which POSIX demands.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-03 00:39:45 +00:00
Stefano Ceccherini
7c30291e7e fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27260 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-01 06:55:22 +00:00
Ingo Weinhold
fbed358934 The incorrect indentation fooled me. <stropts.h> is already included in
Linux.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-31 12:35:12 +00:00
Ingo Weinhold
3d62be2e79 Not so in BeOS/Haiku, but officially ioctl() is defined in <stropts.h>.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-31 12:30:23 +00:00
Ingo Weinhold
4612433715 * Added parameter "size_t align" to file_map_translate(). If > 1, the
vector at the end of the file will be aligned to the given value.
* BFS uses an alignment of 512 bytes (should be block size of the
  underlying device or BFS block size, whatever is less), which should
  be fine, since file data are only stored in BFS blocks. This totally
  avoids any partial operations at the I/O scheduler level, thus saving
  disk operations. Not that I could measure any performance difference.
  Theoretically it should help a lot though, particularly when dealing
  with lots of small files, since we avoid using bounce buffers, which
  are (a) limited in number and (b) require copying of the data.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-30 23:06:28 +00:00
Stephan Aßmus
ec56835f51 Patch by David Powell:
* Implement color palette generation for the boot splash images in the
  generate_boot_screen build tool. Only 4-bit screen support is missing now.
* Adopted images.h with the new results from generate_boot_screen.

This should fix black boot screens for graphics cards that don't support
true color modes for the native resolution. I've tried to find the ticket,
#2177 almost looks like the one, but it looks more like the mode is out
of range if I understand the ticket right.

Thanks a lot, David, and sorry it took so very long to apply your patch!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-28 16:59:34 +00:00
Ingo Weinhold
4d121ec067 Patch by Andreas Faerber with changes by myself: Work towards Solaris
build platform support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 15:36:24 +00:00
Stefano Ceccherini
03c9250f85 gcc4 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-05 08:33:40 +00:00
Axel Dörfler
3c1a3047a4 * Added file_cache_is_enabled() function.
* Added file_map_set_mode() function that you can use to keep a whole file
  cached. This is needed for the swap file support: FILE_MAP_CACHE_ALL will
  not only precache all file_io_vecs when called, but it will also cause all
  file_map_translate() calls to fail that would require further caching (ie.
  if the file size had changed).
* Updated the fs_shell file map code to the latest one (with several bug fixes).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-04 08:28:17 +00:00
Ingo Weinhold
7491000f20 Added functions file_cache_{disable,enable}(). They allow to disable
actual caching in the file cache, i.e. all reads and writes go directly
to the underlying device. The implementation is not quite complete,
since the VM can still add pages to the cache when the file is mmap()ed,
which can lead to inconsistencies.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-04 03:15:50 +00:00
Axel Dörfler
9f6ae76f02 * Added acquire_vnode() call that you can use to get another reference to an
inode - unlike get_vnode() the busy flag won't prevent you from getting that
  reference.
* Changed put_vnode() to return an error in case the vnode couldn't be found.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-01 09:59:19 +00:00
Ingo Weinhold
7e3c202478 Added fssh_volume_for_vnode() and fssh_do[_iterative]_fd_io() to the
FS shell. The latter two lack an implementation yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 23:36:08 +00:00
Maurice Kalinowski
39fd631a39 julun+mauricek:
* as on darwin platform we cannot use resources for the boot sector data. Instead use attributes to store the data.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-23 22:17:54 +00:00
Maurice Kalinowski
ea70c8b6f3 julun+mauricek:
* additional includes for cygwin
   * some automatic whitespace cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-23 22:15:05 +00:00
Maurice Kalinowski
dff0e735eb julun+mauricek:
* Cygwin does not have regex support, so we use the one we already have in our glibc.
   * Keymap.h has a automatic forward declaration of re_registers, which causes a compile break on Cygwin, but not on other platforms. So add a include for regex.h in the header and remove it in the source file.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-23 21:40:12 +00:00
Ingo Weinhold
e6bd90c58d * bfs_fsync() was the only place which could cause the
fs_vnode_ops::write_pages() to be called with fsReenter = true. Since
  this is no longer the case, the argument has become superfluous. For
  read_pages() it always was. Removed the argument from the functions
  and all functions that propagated it.
* Some whitespace at the end of lines was removed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26579 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-23 15:47:47 +00:00
Axel Dörfler
78b32dd026 * The rw_lock is now able to nest read/write locks when you have a write lock.
It follows the semantics of the BFS R/W lock, though, that is, if you unlock
  your write lock before the read locks, the read locks effectively become
  write locks, too.
* Added a mutex_transfer_lock() function that will allow you to unlock a mutex
  in a different thread than the one which locked it (only matters if KDEBUG
  is enabled, though).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26316 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 07:56:49 +00:00
Axel Dörfler
06d5e1b3b6 * Added ReadLocker/WriteLocker classes to auto lock an rw_lock.
* Added *_init_etc() functions to the fs_shell.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 18:12:33 +00:00
Axel Dörfler
af370c702a * Added a recursive_lock_trylock() function.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 16:17:34 +00:00
Axel Dörfler
589f1a9133 * Made the private kernel locking primitives available to file systems as well.
* Applied Korli's mutex_unlock() fix to block_cache.cpp.
* Removed block_cache_priv.h, as it's no longer needed (moved its definitions
  into block_cache.cpp, as in the kernel file).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 15:19:19 +00:00
Philippe Houdoin
e221c09e50 Moved rc from <build> tools to target standard command tools.
Updated rules to build the <build>rc platform version.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-27 20:44:01 +00:00
François Revol
14fbb88f10 stubbed out makebootable for atari. It should be doable the same way as on x86, but the emulator doesn't scan hdds for bootsector.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-23 15:52:44 +00:00
Michael Lotz
b204648b75 Don't define UNIX when building zip as a build tool under a BeOS compatible
host. This prevents the BeOS and Unix specific zipup.h from clashing and allows
hybrid GCC2/GCC4 images to be built under BeOS.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 18:07:07 +00:00
Ingo Weinhold
2ed64c408d Patch by Michael Lotz fixing a missing typedef when compiling with
native compiler gcc 2 and cross-compiler gcc 4.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 16:39:56 +00:00
Ingo Weinhold
42d3fc045e Added implementations for the __fssh_swap_int*() functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 20:52:43 +00:00
Rene Gollent
585080d740 Corrected with input from Ingo. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 00:35:33 +00:00
Rene Gollent
aa9d957d57 FreeBSD build fix, please review (needed for definition of FSSH_SEEK_CUR).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25674 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 23:02:06 +00:00
Ingo Weinhold
a55e32e52d * Moved fssh_lseek() out of the FSShell namespace.
* Removed debug left-over.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-27 13:28:58 +00:00
Ingo Weinhold
adfd232086 Allow building zip as build tool. Tested under Linux only.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-17 23:29:01 +00:00
Ingo Weinhold
6b202f4e3d * Introduced new header directory headers/private/system which is supposed
to contain headers shared by kernel and userland (mainly libroot).
* Moved quite a few private kernel headers to the new location. Split
  several kernel headers into a shared part and one that is still kernel
  private. Adjusted all affected Jamfiles and source in the standard x86
  build accordingly. The build for other architectures and for test code
  may be broken.
* Quite a bit of userland code still includes private kernel headers.
  Mostly those are <util/*> headers. The ones that aren't strictly
  kernel-only should be moved to some other place (maybe
  headers/private/shared/util).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25486 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 03:55:16 +00:00
Ingo Weinhold
2988eab3dc Added support for option '-L' (always dereference symbolic links).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-01 12:43:29 +00:00
François Revol
99734c6841 Missing close() calls just for the sake of it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-26 19:35:00 +00:00
Stephan Aßmus
636bff2fd2 Patch by Philippe Saint-Pierre:
* Revised the RLE algorithm used for compressing the boot splash artwork to
  handle uncompressed runs.
* Compress the RGB channels separately for improved efficiency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24844 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-06 20:10:50 +00:00
Ingo Weinhold
ea39c6377e Might help gcc 2.95.3 to resolve its perceived overloading of the
function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-06 03:13:11 +00:00
Ingo Weinhold
7ffafac8d7 * Reorganized the FS interface a little:
- Moved most file_system_module_info hooks into separate structures.
    Those that operate on mounted volumes to fs_volume_ops, those
    operating on a vnode to fs_vnode_ops.
  - Got rid of the fs_volume, fs_cookie, fs_vnode typedefs. We use void*
    again.
  - Instead of a void* volume and node cookie hooks are passed a
    fs_volume and fs_vnode structure pointer, which contain the cookie
    and an ops pointer (fs_volume a few more things).
  - The VFS {new,publish,get,...}_vnode() functions take a fs_volume*
    instead of the volume ID. So does vfs_get_fs_node_from_path().
  - Added type and flags arguments to publish_vnode() and the
    get_vnode() hook and removed the type argument from lookup() hook.
    Added vnode::type using formerly unused bits to store the node type.
    Simplified a few things in the VFS due to the now always available
    node type.
  - Added fs_volume_ops::{create,delete}_sub_vnode() and
    fs_vnode_ops::get_super_vnode() hooks. They are used to support file
    system layers, e.g. allowing to extend an FS not supporting BeOS
    attribute with attribute support. Needs some more work in the VFS.
  - Added fs_vnode_ops::create_special_node() hook for creating special
    nodes (e.g. FIFOs).
* Adjusted the built-in file systems and BFS according to the interface
  changes. Removed all other FSs from the image for the time being.
  We'll see whether further API changes are necessary before porting
  them.
* Adjusted the bfs_shell accordingly.
* Implemented create_special_node() in rootfs to support special nodes.
* Added support for FIFOs:
  - Added syscall _kern_create_fifo() (used by mkfifo()), which creates
    a special node (type S_IFIFO) in the respective file system.
  - When a special node is published the VFS creates a respective sub
    node. Currently only FIFOs are supported.
  - Added a little support for FIFO subnodes by using functionality from
    the pipefs.
  - Added mkfifo to the image. It can create FIFOs in the rootfs, but
    the FIFOs aren't really usable ATM, since they still work like
    pipes, i.e. readers and writers need to have them open at the same
    time.
* Some smaller changes in the VFS:
  - Made the *_CALL macros nicer to use (vargs).
  - Refactored FS entry lookup into new function lookup_dir_entry().
  - create_vnode() no longer just calls the FS create() hook. First it
    looks up the entry and uses open_vnode(), if it already exists. This
    is necessary for two reasons: 1) The FS might not support create()
    while still allowing to open() entries. 2) When the FS has other
    layers on to of it (or the respective node) it might not be
    responsible for opening the node.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-05 23:05:16 +00:00
Stephan Aßmus
d0fc7c65c6 Patch by Philippe Saint-Pierre:
* Implemented RLE compression for the boot splash images, resulting in
  smaller kernel and boot loader.
* Only the boot loader contains the RLE compressed images, the decompressed
  buffer for the icons is passed to  the kernel via kernel args.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24812 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-05 21:15:43 +00:00
Ingo Weinhold
9181e9cbcf * Used the original size for vmdk Extent Description, not the
sector-aligned one.
* Truncated the image a little too short.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-04 01:24:26 +00:00
Ingo Weinhold
702421fa41 Fixed incorrect getopt() specification: -c and -H don't have arguments.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 23:54:55 +00:00
Ingo Weinhold
7c529c2415 * Renamed vmdkheader to vmdkimage and changed it to create a full image
by default (new option "-H" will create the header only). Option "-c"
  will clear the image.
* Adjusted build_haiku_image accordingly. vmdkimage is way faster and
  more portable than the former vmdkheader+dd combo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 21:18:18 +00:00
Axel Dörfler
e63c117011 Looks like some bloke forgot to commit *some* files that should have been part
of r24768 (block cache notification mechanism rewrite).
Thanks for the note, Vasilis!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 14:14:27 +00:00
Stephan Aßmus
f408d9a227 * Renamed placement constants to fit into the existing scheme.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 10:23:03 +00:00
Stephan Aßmus
a6e227c551 * Changed the generate_boot_screen build tool to take placement parameters
for the logo and the icons separately.
* Image data output uses full line width.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 10:19:00 +00:00
Ingo Weinhold
f9bf1195b8 Use a reasonable umask when creating directories.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 12:29:59 +00:00
Ingo Weinhold
fb84047190 Null-terminate the _kern_read_link() result.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-26 04:18:40 +00:00