Commit Graph

263 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
Stephan Aßmus
5a410001da * Added Firefox optional package.
* Added VLC optional package. (I repackaged the latest BeBits version and
  put it on www.yellowbites.com, which is a) much faster to download at
  least from Germany and b) has the Haiku vector icon.)
* Exchanged the Pe package for a recent SVN build which also has the Haiku
  vector icon.

Going to test all these changes on a Linux host soon, seems to work fine
on a BeOS host.

NOTE: The WonderBrush package has gotten a silent update, it includes the
icon in the resources now too, like the other packages with Haiku icon and
also fixes a problem in the Navigation view.

NOTE 2: The build system does not download packages again if generated/download
already contains a .zip with the name of the optional package. So you need 
to delete those to get the recently updated Vision, Pe and WonderBrush
packages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-07 14:12:05 +00:00
Rene Gollent
6cb48eeb3a Updated optional Vision package to point to a new build which is a)
built directly out of Haiku's build sys, which is to say against haiku's 
headers, etc. directly, and b) includes Stephan's HVIF icon (thanks!).



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-07 01:18:29 +00:00
Stephan Aßmus
fee1aa056c Thank you very much, BitmapDrawing, you have served us well. You may go and
play outside now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-06 12:42:16 +00:00
François Revol
cfbbe30f3b Adding Bootscript.cd to the image helps a lot, though it now gets stuck waiting for input_server.
Either app_server doesn't start it, or it exits right away...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24262 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-06 03:04:28 +00:00
Stephan Aßmus
16eb448eb4 * The HaikuImage script will put a file "fresh_install" into
/boot/home/config/settings.
* The Bootscript will check for the existance of this file and updates the
  mime database with all the applications and preflets that come with the
  install. Then it removes the indicator file.

This fixes the problem that all the apps are not known to the system until
you run them once. Ie "Open With..." and such stuff works out of the box.
Feel free to find a more elegant way, I just found this simple and effective.
:-)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-05 22:25:33 +00:00
François Revol
7c7279a1a6 Reorder the list of boot modules by logical layer to make it easier to catch the missing ones.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-04 01:01:00 +00:00
François Revol
be438c2b6b Add ntfs to the image if GPL is enabled, as it seems to build just fine.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-25 22:03:39 +00:00
Axel Dörfler
ff13a96fe4 * The common directory no longer contains a "config" directory; this fixes
putting the network "services" config file at the wrong place.
* Removed some dead code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-25 16:57:47 +00:00
Stephan Aßmus
18c361960a applied patch by Maurice Kalinowski:
Do not attempt to install optional 3rd party packages when building
a GCC4 version of Haiku. I think there has been some discussion on this
topic before, with a more advanced solution, but for the time being, this
should be ok.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-24 09:43:10 +00:00
Axel Dörfler
631145a976 * Added new rule AddHeaderDirectoryToHaikuImage that copies header
directories. Note that you need an updated "sed" (from the Haiku
  repository) if you want to use that rule.
* The "Development" optional package now installs the Haiku headers
  needed to build stuff (ie. "os", "gnu", and "posix"). It also makes
  a symlink "be" so that we can still use the BeOS compiler with its
  builtin header paths.
* Fixed AddVariableToScript for older shells that do not support '+='.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-22 10:33:43 +00:00
Michael Lotz
94fec641a7 Implemented a small kernel debugger add-on that triggers a redraw of the
entire screen when exiting the kernel debugger. It sets up a thread that sends
a message to the (currently hardcoded) desktop message looper. The desktop then
does mark the whole screen dirty which causes a full redraw.
Since interrupts need to be enabled I went with an asynchronous thread and
releasing a request sem in the add-ons' exit hook.
Added the add-on to the image as it shouldn't hurt to have it for now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-20 00:40:07 +00:00
Alexandre Deckner
644c84564a - fixes the Keymap preflet instead, as suggested by korli.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-19 12:43:52 +00:00
Alexandre Deckner
9518dd74a7 - small mistake in my previous commit, sorry!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-19 11:03:19 +00:00
Alexandre Deckner
02a0e90533 - add a home/config/settings/Keymap directory since the Keymap preflet needs it. (see line
89 to 99 in src/preferences/keymap/KeymapWindow.cpp )


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-19 10:59:46 +00:00
Michael Lotz
74672cf53c Add bison datafiles yacc.c, c.m4 and c++.m4 to /etc on the image. They are needed to build Haiku. Also fixes #1783.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-17 19:47:29 +00:00
Ingo Weinhold
2fcb695c2b axeld + bonefish:
Changed the way the VMware image is built. Instead of creating a normal
image first and then adding vmdk header and that image, we create the
VMware image in one go, now. Therefore "jam update-vmware-image ..."
does now actually update the VMware image directly, instead of updating
the normal image and recreating the VMware image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-17 13:54:32 +00:00
Jérôme Duval
d68098d9fc added PCXTranslator in the hd image
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-17 12:02:15 +00:00
Jérôme Duval
cbc337d925 have libilmimf built with libstdc++v2
added EXRTranslator to the image


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-09 17:48:10 +00:00
Ingo Weinhold
7025a0386d Added cc and c++ wrapper scripts.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-07 00:26:02 +00:00
Philippe Houdoin
7b344764b5 * Added marvell_yukon driver, tested on real hardware
(P5W-DH motherboard have two of those gigabit ethernet controllers),
  seems to work fine.
* Add libglut.so alias to the development libs symlinks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-06 23:14:37 +00:00
Axel Dörfler
c8679751f6 * Added RAWTranslator to the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-06 18:15:43 +00:00
Ingo Weinhold
b2b8943d50 Beginnings of an optional "Development" package. Currently only the glue
code and the library symlinks are installed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-06 13:22:14 +00:00
Ingo Weinhold
a101e99aad Added libalm.so and its dependency liblinprog.so. libalm.so provides a
BLayout implementation (BALMLayout) using the Auckland Layout Model
(ALM). The original ALM was implemented by Christof Lutteroth, the
Haiku/C++ version by James Kim.
The code needs some review, but the test programs seem to work fine.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-06 10:51:44 +00:00
Axel Dörfler
d0466f7f64 Added ipro100 driver. Tested on real hardware and it seems to work fine.
This also closes ticket #1748.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-05 22:18:14 +00:00
Axel Dörfler
e84bd1d2e7 * <agp_gart>intel is x86 only.
* NetBootArchive still used "agp"; replaced it with agp_gart, and added the
  Intel GART module as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-05 12:36:18 +00:00
Axel Dörfler
0481936536 * Ported FreeBSD's ftpd to Haiku.
* Added it to the image, and configured it to be used.
* Currently, it cannot transfer files over 64 KB for some reason
  ("Message too long").


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-02-03 16:37:49 +00:00
Stephan Aßmus
2697202858 Rene requested that I point the Vision package to another archive. This
one has actually been compiled on Haiku and uses better network options, since
it uses BONE headers. On Rene's machine, this version is running since 2.5
days under Haiku. :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23795 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-31 16:31:57 +00:00
Stephan Aßmus
ec103c3c38 Moved DriveSetup from preferences to apps. Changed HaikuImage script
accordingly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-27 13:14:50 +00:00
Axel Dörfler
3adccb1935 * More or less completely rewrote the AGP bus manager.
* It now also serves as a generic GART manager and accepts bus modules as well
  as custom modules of graphics drivers if they want to (could be used for the
  Radeon PCI GART stuff, for example).
* Implemented GART support module for Intel i965 and G33 chipsets (the other
  Intel chips will come later).
* Renamed agp bus manager to agp_gart to reflect its new functionality (even
  though the AGP functionality is already outdated (due to PCIe), the GART
  stuff remains current).
* Adapted existing users of the AGP bus manager to the API changes.
* Not very well tested yet...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-01-26 22:18:52 +00:00