Commit Graph

524 Commits

Author SHA1 Message Date
Axel Dörfler 24f792a822 * Ported ide_isa module to the new driver architecture.
* Minor cleanup of ide_isa, and generic_ide_pci (removed wrapper.h).
* Added ide_isa back to the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 10:37:58 +00:00
Stephan Aßmus e78b56aaf7 Fix the link target for Beam. Note that the R5 version cannot retrieve mails
either, it just hangs there trying ot connect and eventually times out.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-01 21:18:08 +00:00
Jérôme Duval 5f3c81d6a6 fix local variable naming
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 21:01:05 +00:00
Axel Dörfler 3736cb7d04 * Ported scsi_cd to the new driver architecture.
* Added legacy_sata and scsi_cd back to the image.
* Minor cleanup in scsi_disk.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 16:09:31 +00:00
Axel Dörfler fc128a4c76 * Made block_io.h usable from C++ (which doesn't like "typedef a *a" anymore).
* Renamed scsi_dsk to scsi_disk.
* Joined all scsi_disk sources together to a single scsi_disk.cpp file.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 11:59:02 +00:00
François Revol 7195e3d3a7 OpenSound actually is usable in gcc4 builds, the drivers are plain C, and we have the media node in svn.
I shall update it someday too...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 11:03:40 +00:00
Stephan Aßmus f3b1b98756 * Check the TARGET_ARCH variable and make sure it is x86 for all x86
packages. Print an error message for unavailable packages.
* Detect the build of a GCC2/GCC4 hybrid image and install GCC2 packages
  on a GCC4 build where no GCC4 package is available. I did not test
  every GGC2 package on a GCC4 build, though I have not found any that
  does not work. If a package gives problems, feel free to disable it
  for the hybrid build or send me a note.
* Add new optional package for Beam. Though I could not test it since,
  SATA AHCI does not work for me ATM. I know that Beam 1.1 for BONE is
  unable to retrieve mails (times out). Maybe the R5 version has better
  luck, will check later. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 10:22:59 +00:00
Rene Gollent f678c84aff Port legacy_sata to new driver architecture. However, based on device manager's kernel debugger output it's still using the generic_ide driver for my controller instead. Axel, please review.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 23:27:11 +00:00
Oliver Ruiz Dorantes 6d4f2038c3 Patch by Andreas Faerber,
Add Optional Package for the Bluetooth Components



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25686 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 21:52:51 +00:00
Axel Dörfler d1588bb543 * Adapted the silicon_image_3112 driver to the new device manager.
* Removed std_ops(), as it wasn't used for anything, and is optional in Haiku.
* ide_isa, and legacy_sata are still waiting for the same set of changes :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25678 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 08:58:15 +00:00
Axel Dörfler 368167ede8 * Integration of the new driver architecture.
* Moved devfs from fs/ to device_manager/, and separated the legacy driver
  support from it.
* Removed fast_log module.
* There are a couple of (temporary) regressions, though:
  - legacy SATA and ISA IDE support is disabled, the drivers haven't been
    ported yet.
  - The not yet used ATA bus manager hasn't been ported yet, either.
  - AHCI changes have not been tested.
  - the listdev command has been removed from the build (as it currently
    doesn't work anymore).
  - device manager generated IDs currently are not freed anymore when a device
    node is removed.
  - generic drivers can't yet use the new driver architecture.
  - simple busses that do not support device types won't work yet.
  - legacy driver publishing/unpublishing (ie. what USB needs) has not been
    tested, and may be broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 16:52:27 +00:00
Axel Dörfler 35db13ea5a * Replaced the old s3savage driver with the new s3 driver, both written by
Gerald Zajac. Thanks a lot!
* Also put it on the image by default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-20 21:09:49 +00:00
Ingo Weinhold a8af2b6dda Some work on pthreads:
* Made the pthread_cond_t internals public. This is necessary to support
  process shared condition variables. Fixed initializer macro.
* Made the pthread_rwlockattr_t structure opaque.
* pthread_t is no longer typedef'ed to int. It's the pointer to the
  internal _pthread_thread structure.
* Removed __get_pthread(). pthread_self() can be used instead.
* No longer tunnel the pthread exit value through Haiku's thread exit
  value. We do have a separate field in the _pthread_thread structure
  for it, now.
* Handle detaching of threads correctly.
* pthread_rwlockattr_{g,s}etpshared() use the
  PTHREAD_PROCESS_{SHARED,PRIVATE} constants, now.
* Commented out yet unsupported structures (barriers, spinlocks).
* Rebuilt APR optional package. The pthread changes weren't binary
  compatible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25582 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-20 20:43:28 +00:00
Axel Dörfler 4caadfdb36 Removed firewire driver, as it causes several problems on many machines.
See bug #2243, for an example.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-20 07:32:45 +00:00
Ingo Weinhold 4e9ac4d14e POSIX test suite related changes by Vasilis Kaoutsis:
* made the output easier to observe
* added the sigsuspend_6-1 test to the package
* made the fork_3-1 test return when it fails
* added output to the pthread_once tests
* other minor cosmetic changes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-19 23:03:47 +00:00
Michael Lotz 5b03912b5f * Correct removal of failed transfers by applying the address mask. As the head
pointer also contains the toggle carry and the halt bit (which was obviously
  always set as the endpoint had an error) the address comparison failed and
  the head was dead in the water with all further transfers timing out until
  a subsequet cancel cleaned the mess up again.
* Add the OHCI host controller driver to the image as it should now be fully
  functional except for isochronous transfers.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-19 20:41:58 +00:00
Ingo Weinhold 2b9cc6d877 Typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-18 00:01:17 +00:00
Ingo Weinhold 9b0dd52858 Support for adding libraries compiled with the alternative gcc (2 vs.
4). One has to have a (fully configured) "generated" directory for the
alternative gcc and specify it using the new option
"--alternative-gcc-output-dir" when configuring the main build.
Additionally the build variable HAIKU_ADD_ALTERNATIVE_GCC_LIBS has to be
set to "1".

If that has been done, when building the image a sub-jam is invoked that
generates the alternative libs and zips them. The main-jam unzips them
into the correct directory in the image. Note that the JAM build
variable has to be set when using a jam executable not invoked by "jam".

Tested with gcc 2 NetPositive, Pe, and FireFox under gcc 4 Haiku, and
with a few of the standard gcc 4 Haiku apps under gcc 2 Haiku. Seems to
work fine so far.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-17 23:47:39 +00:00
Ingo Weinhold 3c504a317e Added rules F{Files,Symlinks}In{Container,HaikuImage}Directory returning
the targets/symlinks added to a container/Haiku image directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-17 23:31:04 +00:00
Rene Gollent a93840a2f4 Add gcc4-compatible Vision optional package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-16 22:31:35 +00:00
Ingo Weinhold 049dbc4652 Added APR-util optional package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25513 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-15 20:47:42 +00:00
Michael Lotz 0899ad23e2 Adding the usb_ecm driver to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25493 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 17:09:43 +00:00
Stephan Aßmus 7557d13189 Applied patch by Marco Minutoli:
Added a new command line utility "mkfs" which can initialize a given volume
with a file system by it's short name via the new Disk Device API.
Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 15:48:41 +00:00
Ingo Weinhold 07ddcd64cf * Renamed libnetapi to libbnetapi. Create a symlink in the image.
* Extended R5 compatibility check to also consider calls from
  libbnetapi.
* Fixed incorrect R5 compatibility check in BNetEndpoint constructor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 13:49:48 +00:00
François Revol ae28f0aebd - add sunos as possible host
- fix build (at least CodyCam), NETAPI lib is now libnetapi for Haiku...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 13:32:52 +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 9b4fea7ee7 * Made libnetapi a separate library again.
* The built-in services are no longer added as resource to libnetwork,
  but as attribute. This removes the libbe dependency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-13 23:41:09 +00:00
Ingo Weinhold 377a79df84 Added APR 0.9.17 optional package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25484 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-13 22:15:45 +00:00
Jérôme Duval 52eaadd811 added a sounds directory in beos/etc
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-08 11:17:09 +00:00
Ingo Weinhold 46f2d5ea88 Moved /etc/post_install to /boot/common/boot and the fresh_install marker
file to /boot/common/settings. Repackaged OpenSSH accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25335 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-06 22:47:38 +00:00
Ingo Weinhold c5174c0a7e Add libMicro copyright and license to the image when the respective
optional package is installed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25314 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 16:08:30 +00:00
Ingo Weinhold 5f78d261a2 Added rules AddOptionalPackageDescriptionToHaikuImage and
AddLicenseToHaikuImage that can be used in optional package definitions
to add a copyright entry in AboutSystem and add a license file to
/etc/licenses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 16:06:41 +00:00
Ingo Weinhold cff443b405 Added OpenSSH optional package. The daemon has to be started manually
(just "sshd"), ATM. Not sure how we want to deal with daemons, yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 13:19:57 +00:00
Ingo Weinhold b2c7de8230 Reactivated the "fresh install" code in the Bootscript, but modified it
a bit:
* Added directory /etc/post_install, which can contain scripts that will
  be executed on the first boot.
* Moved the mimeset invocations to such a script. Use the "-apps"
  option instead of "-all". Since create_app_meta_mime() (and thus
  mimeset) work recursively now, running the commands does actually have
  an effect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 13:10:42 +00:00
Ingo Weinhold b946bc32e2 Don't create the symlinks for the old networking libraries in the
development libraries dir.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-04 00:32:26 +00:00
Ingo Weinhold 9c5c2d9d45 Added "which" script, so that the command can be invoked in shell
scripts, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-26 17:41:53 +00:00
Ingo Weinhold a47d979fc2 Added BSD compatibility headers to the image. They are not in the search
paths by default, but I guess we want to keep it that way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-24 21:33:08 +00:00
Stephan Aßmus 2d581f8d95 Forgot to commit this, added Pairs to the image in the Demos folder. Sorry!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-23 09:51:22 +00:00
Ingo Weinhold da63adf5ea Added HAIKU_IMAGE_HOST_NAME build system variable. Can be used to set
the host name of the Haiku installation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 14:00:31 +00:00
Ingo Weinhold 3e99f3e14f Wrong package name in error message. Spotted by Andreas Färber.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 12:53:40 +00:00
Jérôme Duval 0ea1e53a7d removed net_stack and socket from net boot image
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 12:42:01 +00:00
Ingo Weinhold adfe1993eb Add --no-undefined for kernel add-ons, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 03:08:29 +00:00
Michael Lotz de39891a3c Add the "-fno-tree-vrp" option when building with GCC4. It seems that the
value range propagation optimization results in broken code with the GCC4
version we are currently using. Added TODO to retest/remove this flag when we
update our GCC4 compiler.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 17:12:47 +00:00
Ingo Weinhold bce94fa596 Repackaged jam and automake to contain an .OptionalPackageDescription.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 15:57:08 +00:00
Ingo Weinhold eecbf4e78e * Copy licenses to the image (/etc/licenses).
* Whenever unzipping a zip archive to the image, we do first check, if
  it contains an .OptionalPackageDescription file. If so, its contents
  is appended to AboutSystem's "COPYRIGHTS" attribute, which will cause
  the respective info to be shown in the about view.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 15:55:54 +00:00
Axel Dörfler 45e95a057f * Removed the old net_stack driver code, and the kernel socket interface.
* Also removed the header files that belong to those files.
* Only kept the userland_ipc.h header for now, to remember us about the
  former userland server driver (that I also removed - it can always be
  resurrected from SVN if needed).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 12:42:25 +00:00
Ingo Weinhold aa2d1d44f6 * Added useradd and passwd to the image.
* Enforced 80 columns limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 00:18:00 +00:00
Jérôme Duval 1642048478 use <bin>zipgrep target
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25037 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 23:56:39 +00:00
Ingo Weinhold f3d12d460b Execute chmod at least command or the set permissions might get lost
again. I'm not totally sure why that is, but the set-uid permission kept
disappearing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 23:51:21 +00:00
Axel Dörfler 2e5e52d6f1 * Simplified the Deskbar "Application" and "Desktop Applets" link creation
a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 15:26:39 +00:00
Axel Dörfler 95230c2995 * Added ActivityMonitor to the list of apps in the Deskbar.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 15:00:33 +00:00
Michael Lotz aa01c3e72e Disable strict aliasing on GCCs newer than 2 until we have analyzed and fixed all aliasing issues.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 09:40:53 +00:00
François Revol 274ee7ddf6 Add draggers to /bin/ in the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 00:34:05 +00:00
Michael Lotz 0eaadd30b2 * Applying patch by Dustin Howett that updates the iso9660 filesystem to the
new filesystem interface.
* Renamed sISO* to gISO* though as they are in fact not static.

Briefly tested and works as expected. Thanks for your work Dustin!
Closes enhancement #2089.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-17 06:26:43 +00:00
Michael Lotz 72010d4247 * Ported the FAT filesystem to the recent filesystem interface changes which
was, thanks to the detailed instructions from Ingo, quite doable.
* Ported the (deprecated and now publically removed) notify_listener() calls
  to the respective new notify_* calls.
* Fixed debug build.
* Added the FAT filesystem back to the image.

I only tested the filesystem briefly and everything seemed to work as expected
(mounted the FAT part of my bootable Haiku memory stick, opened a few files
and copied something to it). At least it should not be any more broken than
before the interface changes ;-).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-16 20:24:22 +00:00
Ingo Weinhold 088fb3cd47 * Created OptionalTestPackages for optional packages that contain test
suites and the like, and moved the image jam code for PosixTestSuite
  and libMicro there.
* Some cleanup (line length, use grist).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-15 16:54:40 +00:00
Ingo Weinhold b27b39f198 Added libMicro benchmark. Ported by Vasilis Kaoutsis.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-15 16:27:00 +00:00
Axel Dörfler 9c79200c6b Added ActivityMonitor to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-13 06:03:48 +00:00
Ingo Weinhold f9ee0e634a Added unix sockets protocol module. There's still quite some debug
output enabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-12 18:42:12 +00:00
Ingo Weinhold df50f7a9b4 * Changed the way the socket functions work:
- The net_stack driver is no longer used. Instead we have a kernel
    module which is directly used by syscall implementations in the
    kernel. I.e. we no longer tunnel those functions through ioctls, but
    have normal syscalls.
  - Removed the superfluous net starter module.
  - Implemented the FDTYPE_SOCKET type file_descriptors, that is sockets
    are no longer vnode based.
  - Adjusted libnetwork (the socket function implementations)
    accordingly.
  - Adjusted netstat accordingly.
* Socket module:
  - Implemented socketpair().
  - Added "kernel" parameter to the control hook. Quite a few more hooks
    would actually need the parameter, but I didn't change those yet,
    since that would probably also require changes to the protocol
    module interface.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-11 04:12:23 +00:00
François Revol c78985abf5 Replace spaces with tabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-08 15:18:19 +00:00
Ingo Weinhold 335bf21834 Rebuilt libtool package, since the old one seemed to be missing files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-06 23:28:50 +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
Ingo Weinhold 3b9651f3fc Pass "--no-undefined" to the linker when building a shared library for
Haiku. Support for undefined symbols is nice in principle, but not
really needed for building Haiku itself, and can get little annoying, if
one really just forgot to link in a symbol or has a typo in a function
name in C code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-05 22:04:28 +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
Ingo Weinhold 5b420b6d10 Replaced "echo -n >" by "touch" as it's more portable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 19:52:43 +00:00
Michael Lotz 463235a9a8 Add the usb_disk driver to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 18:54:10 +00:00
François Revol dbbf08a95a Just make sure someone copying it as UserBuildConfig will understand what is wrong and where instead of reporting build breakage induced by their misbehaviour.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 14:59:04 +00:00
Axel Dörfler 0f6b6c36dc Added syskonnect driver to the build to close ticket #1945 again that
diver reopened so fast.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 14:36:39 +00:00
Ingo Weinhold a0a9d225d3 Added a new fancy build system feature called "build profiles".
Especially people building various kinds of images with different
settings may want to have a look at the respective section in the
UserBuildConfig.ReadMe.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 20:29:43 +00:00
Ingo Weinhold f8cb30712e * Replaced the dummy implementations of the <grp.h> and <pwd.h>
functions by ones reading /etc/{group,passwd}.
* Added quasi-standard getpwent_r() and getgrent_r().
* Added _SC_GETGR_R_SIZE_MAX and _SC_GETPW_R_SIZE_MAX sysconf()
  constants.
* Moved initgroups() and getgrouplist() definition to grp.cpp. They use
  the same backend as the <grp.h> functions.
* Set the permissions of files created by the build system to what they
  should be on the image (executables: 755, others: 644). Otherwise only
  root could do anything under Haiku.
* Added build system variables HAIKU_ROOT_USER_NAME and
  HAIKU_ROOT_USER_REAL_NAME to customize name and real name of Haiku's
  root user.
* Added build system rules AddUserToHaikuImage and AddGroupToHaikuImage
  for adding additional users and groups (by default only root user and
  group and a "users" group are created).
* Adjusted BIND port and coreutils config.h files according to what
  features have become available.
* Fixed HAIKU_DOCUMENTATION_OBJECT_DIR definition. Untested, but it used
  a wrong variable name before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 14:02:52 +00:00
Ingo Weinhold 71136ca48a * Added optional package OpenSSL.
* Added list of optional packages.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 20:01:25 +00:00
Michael Pfeiffer 0255f41188 Implemented UI for bootman.
TODO:
- Implement/integrate low level stuff (see BootDrive.h)
  - reading the partition table
  - reading/writing the MBR
  - writing the boot menu
- Open file dialog for selection of backup MBR file
- Write error message in case of I/O errors
- Test



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24689 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 19:55:13 +00:00
Rene Gollent 88499d361f Updated Vision optional package
- fixes off by one pixel bug reported by stippi.
 - fixes Unicode option to use UTF-8 instead of UTF-16.
 - compiled within Haiku using new Development package.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 18:05:24 +00:00
Ingo Weinhold be8a6e43ff * Added JAMFILE to the config variables.
* Added additional parameters to DeferredSubInclude. It's now possible
  to specify an alternative Jamfile name.
* Added DeferredSubInclude example to UserBuildConfig.ReadMe showing the
  new feature.
* Moved ExecuteDeferredSubIncludes in the root Jamfile before the
  inclusion of HaikuImage, NetBootArchive etc., so that targets defined
  in the subdirectories are already known there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 15:34:30 +00:00
Ingo Weinhold 360be1fc45 * Implemented support for chroot:
- Added a "root" vnode to the io_context. It is used for resolving
    paths and converting nodes to paths instead of sRoot. Some more
    passing around of io_context structures was necessary.
  - Introduced a new lock sIOContextRootLock to protect
    io_context::root. The current uses of io_context::io_mutex
    (put_vnode(), remove_vnode() while holding it) looked too suspicious
    to use that mutex in vnode_path_to_vnode().
  - Added _kern_change_root() syscall and chroot() libroot function.
  - Added chroot coreutils program to the image. Funnily it seems to be
    much easier to set up a little jail than under Linux (just copy
    bash and libroot.so into respective subdirs; mount another pipefs
    if you want pipe support).
    With Haiku allowing direct access to directories via inode IDs
    jailing is obviously not very secure at the moment.
  - Added /var/empty to the image. It will be the chroot target for ssh.
* Changed vfs.cpp:get_cwd() so that the io_context::io_mutex is no
  longer held when calling dir_vnode_to_path().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24673 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 05:59:54 +00:00
Maurice Kalinowski 2df0ed7856 * add audioadapter and flanger addons to the build. Thx to Rene for testing these.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24672 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 01:41:10 +00:00
Ingo Weinhold 1d8aae1b02 * Moved the optional packages definitions to new OptionalPackages file
and sorted definitions alphabetically.
* Updated Pe package to 2.4.1.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24659 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 15:18:35 +00:00
Ingo Weinhold d4954058b5 Added OptionalPackageDependencies rule to specify dependencies between
optional packages, i.e. installing one will install all its
dependencies, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24658 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 15:15:18 +00:00
Ingo Weinhold 020bfa8211 * Added the ncurses headers to the Development optional package.
* Simplified the addition of the libpng and zlib headers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24656 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-29 14:49:30 +00:00
Bruno G. Albuquerque 26f50afaaf Bison is now part of the Development optional package. Maybe the sources should
also be removed from our tree (same with flex).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24622 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 12:54:44 +00:00
Axel Dörfler e0c096f559 Removed the VIA graphics driver from the image for now, until it is more
mature.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 09:24:29 +00:00
Ingo Weinhold 90f333dc68 Added jam, bison, and flex to the Development optional package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-28 07:41:33 +00:00
Ingo Weinhold 071f9c3aa2 Build configurations shouldn't be done in svn controlled files, so I
finally created a solution to avoid that: Header files that contain
configuration settings (and nothing else) go to build/config_headers.
To change settings, create a directory build/user_config_headers (which
is ignored by svn), copy the respective header there and modify it at
your leisure. Currently only tracing_config.h has been moved to the new
location, but more files will follow eventually. It is also recommended
to move optional macro definitions in Jamfile (as for BFS) to a config
header instead; the build system will then automatically rebuild on
changes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24611 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-27 22:01:38 +00:00
Ingo Weinhold d8437e5269 Added /bin/bash symlink.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24601 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-27 01:02:30 +00:00
Ingo Weinhold c904fe377e * Added new optional parameter to AddHeaderDirectoryToHaikuImage,
specifying the name of the header directory on the image.
* Renamed the "gnu" header directory on the image to "3rdparty" and
  created a "gnu" symlink for compatiblity.
* Added zlib and libpng headers to the "3rdparty" header dir.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-26 23:48:41 +00:00
Ingo Weinhold 88c4c6627b * Added new rule CopyDirectoryToHaikuImage which recursively copies a
directory to the image. It supports exclude patterns.
* Changed Add{Source,Header}DirectoryToHaikuImage to use the
  CopyDirectoryToHaikuImage rule. The special handling in the
  build_haiku_image script is gone now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24586 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-26 04:14:25 +00:00
Ingo Weinhold f18e099743 * Added Perl (5.10.0, gcc 2.95.3) optional package.
* Extended the Development optional package. It will now also install
  gcc/binutils as well as autoconf, automake, libtool, texinfo (and
  their dependency perl).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-25 02:01:54 +00:00
Ingo Weinhold d41c97f7a5 Append the .zip extension to the package name rather than to replace the
suffix or otherwise package names with dots in them would be mangled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-25 01:58:41 +00:00
Ingo Weinhold 92c8608e6e Development optional package:
* Install libncurses.a.
* Copy the cpp headers from our repository; don't use the compiler
  headers. This needs some more shuffling around.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-23 23:17:08 +00:00
Ingo Weinhold 0ba49c35b3 * BuildPlatformMain supports overriding HOST_LIBROOT on the target now,
so one can set it to the static libroot, if desired.
* Generic attribute emulation:
  - Added build tool rm_attrs, a simple "rm" replacement, which also
    removes the attributes directory for a given file.
  - Added build/scripts/rm_attrs shell script, which wraps the
    invocation of the rm_attrs tool. If it doesn't exist yet, the
    ordinary rm is used.
  - The RM jam variable refers to the rm_attrs script now, i.e. whenever
    something is removed by the build system, the attributes are removed
    too (if the build tool has already been built, that is).
  - Removed the shell function attrrmrf() in build_haiku_image. We use
    the rm_attrs tool instead, if necessary.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-22 21:05:03 +00:00
Ingo Weinhold a8d29a100c Development optional package:
* Also install _G_config.h.
* /boot/develop/headers/cpp is a symlink to g++'s headers, now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-22 15:13:21 +00:00
Axel Dörfler e2a61c9c4a * Added "headers/build/gcc-2.95.3" to the Development optional package.
* This allows you to use a GCC compiler completely with native headers, 
  all you have to do (after having unpacked and moved GCC to the correct
  location), is to replace its "lib/gcc-lib/i586-pc-beos/2.95.3-beos-060710/include"
  directory with this one. There is no need for R5 headers anymore, 
  then.
* Removed extraneous whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-19 16:19:47 +00:00
Ingo Weinhold 404a0fea46 Second stab at reorganizing standard/gcc headers. This time it not only
builds on Linux with gcc 2 and 4, but the images do even run. :-) Not
tested on BeOS.

* Removed stddef.h and stdarg.h. They are provided by the compiler.
* Adjusted size_t.h, wchar_t.h, and wchar.h accordingly.
* Made stdio.h avoid gcc 2.95.3's fixincludes hack stdio_va_list
* Added gcc 2.95.3 headers to the repository. They are used instead of
  the headers of the gcc 2.95.3's we use to compile Haiku with. Should
  avoid build problems with the BeOS native compiler.

For sake of personal recreation you can rebuild the cross gcc 2.95.3,
but the only thing that changed is its header directory
(lib/gcc-lib/.../include), which isn't used anymore. Replacing it with
headers/build/gcc-2.95.3 should have the same effect as rebuilding, BTW.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24413 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-16 17:21:37 +00:00
Ingo Weinhold d8ce64a27f Reverted r24406. If it builds, it doesn't always work as well. The
change resulted in "version mismatch between boot loader and kernel". So
apparently the size of some type changed unintentionally.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24408 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-15 19:23:05 +00:00
Ingo Weinhold 6191d9a8da * Removed our stddef.h. We don't need it, since gcc comes with one that
under Haiku overrides ours anyway.
* Adjusted size_t.h, wchar_t.h, wchar.h accordingly. This should fix the
  annoying "ssize_t redefined" warnings when compiling under Haiku.
* When building Haiku the gcc headers come first in the include
  search path now, as it should be. The respective TODO suggested that
  this might break the build depending on compiler version and host
  platform. I've tested with Linux gcc 2 and gcc 4, which work fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-15 18:41:46 +00:00
Axel Dörfler 7bcc567db0 Removed "hda" as long as I'm working on it - it doesn't yet work, anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24367 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-12 10:18:25 +00:00
Ingo Weinhold 0bc0282224 * Renamed UserBuildConfig.sample to UserBuildConfig.ReadMe and
uncommented the meaty lines again. Added one or two more explaining
  sentences.
* Created a concise UserBuildConfig.sample with very few comments and
  only the most interesting (commented out) example lines for those
  people who don't read the UserBuildConfig.ReadMe.

I hope everyone can live with this solution.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 20:54:00 +00:00
Maurice Kalinowski 922a7ffc16 * added video_window demo to the image
* reordered addons alphabetically like we do for all plugins



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-10 20:38:54 +00:00
Stephan Aßmus b92508756d * Removed explicit timezone and keymap settings file generation. The system
works fine without those, the keymap file will be generated.
* Supplied the removed lines as example in UserBuildConfig.sample for how
  to supply these settings during image generation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-08 10:12:15 +00:00