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
* 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
* 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
* Added explicit example for enabling debugging for a subtree.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23818 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
* 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
having these
* added DriveSetup to the image
* added optional package Pe, enable it in your UserBuildConfig
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23670 a95241bf-73f2-0310-859d-f6bbb57e9c96
the root of the source tree. Added a work-around that should fix the
problem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23544 a95241bf-73f2-0310-859d-f6bbb57e9c96
You know, moving stuff out of your way just because they don't work won't fix them...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23522 a95241bf-73f2-0310-859d-f6bbb57e9c96
23139 into trunk, with roughly the following changes (for details svn
log the branch):
* The int 99 syscall handler is now fully in assembly.
* Added a sysenter/sysexit handler and use it on Pentiums that support
it (via commpage).
* Got rid of i386_handle_trap(). A bit of functionality was moved into
the assembly handler which now uses a jump table to call C functions
handling the respective interrupt.
* Some optimizations to get user debugger support code out of the
interrupt handling path.
* Introduced a thread::flags fields which allows to skip handling of
rare events (signals, user debug enabling/disabling) on the
common interrupt handling path.
* Got rid of the explicit iframe stack. The iframes can still be
retrieved by iterating through the stack frames.
* Made the commpage an architecture independent feature. It's used for
the real time data stuff (instead of creating a separate area).
* The x86 CPU modules can now provide processor optimized versions for
common functions (currently memcpy() only). They are used in the
kernel and are provided to the userland via commpage entries.
* Introduced build system feature allowing easy use of C structure
member offsets in assembly code.
Changes after merging:
* Fixed merge conflict in src/system/kernel/arch/x86/arch_debug.cpp
(caused by refactoring and introduction of "call" debugger command).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23370 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added pthreads posix test suite tests to run script and image.
* Improved output for said tests.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23002 a95241bf-73f2-0310-859d-f6bbb57e9c96
Hope having both doesn't do nasty things on gcc2 builds.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22996 a95241bf-73f2-0310-859d-f6bbb57e9c96
After copying the mime db or packages the files were removed, but not the corresponding attribute storage files.
So when an inode got reused the file inherited those leftover attributes.
We now remove them before removing the files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22940 a95241bf-73f2-0310-859d-f6bbb57e9c96
* The POSIX test suite is copied to the image when the jam variable
HAIKU_ADD_POSIX_TEST_SUITE_TO_IMAGE is defined (cf. UserBuildConfig.sample).
* Added difftime and fork tests to the test suite run script.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22907 a95241bf-73f2-0310-859d-f6bbb57e9c96
it to HOST_LIBSUBC++. Now it should be possible to remove HOST_LIBSTDC++
from the library list for build tools which don't use the STL -- it had
been added due to the Darwin peculiarity in the first place.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22773 a95241bf-73f2-0310-859d-f6bbb57e9c96
a while ago that removed the incorrect automatic addition of Haiku header
directories in case of targets other than "haiku". The app server test
environment does now almost build again. The problem left is related to the
recent changes of the accelerant interface. I suppose someone in the knows
should decide if we can simply use our header or if special handling is
needed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22630 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added an inputrc to the image that should have the same effect as the recent
bash readline default changes for other apps that use readline.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22553 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Changed ResAttr rule to allow not deleting the file before writing the
attributes.
* Added application signatures for the runtime_loader and zbeos, just so that
they may have an icon, too (hint, hint) :-)
* As a side effect, this also let's FileTypes handle these two as apps (even
though they aren't), so that I can close bug #606.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22412 a95241bf-73f2-0310-859d-f6bbb57e9c96
already exist, it won't be zeroed out. The image will still be
initialized with BFS, though. Handy for installing Haiku on a partition.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22397 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use the new ComplexLayouter for the more complex layouting tasks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22335 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Made use of qoca opt-in. You have to set the jam/environment variable
LAYOUT_CONSTRAINT_SOLVER to "qoca" to do that. Unfortunately it turned
the latest version of qoca is GPL (only earlier version were LGPL; the
license included in the downloadable archive was misleading), so we can't
use it. Complex layouts constraints that would require constraint solver
support are ignored until I've found a replacement.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22235 a95241bf-73f2-0310-859d-f6bbb57e9c96
HaikuImage and enabled individually using the
AddOptionalHaikuImagePackages rule or all at once by setting
HAIKU_ADD_ALL_OPTIONAL_PACKAGES. In principle an optional package can
be any kind of addition to the Haiku image, but usually a zip file will
be downloaded from somewhere and unzipped onto the image. I've added a
WonderBrush package as an example.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22184 a95241bf-73f2-0310-859d-f6bbb57e9c96
to do that is UnzipArchiveToHaikuImage. Cf. UserBuildConfig.sample for
a usage example.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22173 a95241bf-73f2-0310-859d-f6bbb57e9c96
being copied onto the image even when updating only and alwaysUpdate
unspecified.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22118 a95241bf-73f2-0310-859d-f6bbb57e9c96
for three different levels (from "Very Easy" to "Hard"). Have fun!
* Feel free to do a nicer icon!
* Stack.h is actually verbatim copy of a kernel header which we might want
to move to a more public place (like shared).
* ProgressWindow is taken from ShowImage, but adapted to suit different
needs.
* It seems to trigger a bug in the interface kit or app_server: when moving
the mouse around, the right border of a field is sometimes lost. This
does not happen in BeOS, and there is actually no code that looks responsible
for this - it might be an off by one error in the region code, though?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22056 a95241bf-73f2-0310-859d-f6bbb57e9c96
It is loaded on boot, and the SCSI bus manager tries to scan its bus which
of course fails at the moment. Hope that helps :-)
* Moved the driver to its new location; it's a SCSI bus controller, so it
should be placed in busses/scsi.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22048 a95241bf-73f2-0310-859d-f6bbb57e9c96
configure flag "--use-32bit" enabling 32 bit builds with a 64 bit host
compiler.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22046 a95241bf-73f2-0310-859d-f6bbb57e9c96
- module name didn't have the "/device_v1" suffix (which is used to
differentiate device modules, as they can be everywhere in the path).
- ahci_get_supported_paths() now tells the device manager that it
exports a PCI disk device.
* Moved ahci out of the "scsi" sub-directory.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22041 a95241bf-73f2-0310-859d-f6bbb57e9c96
* boots Haiku successfully on 2 different test boxes here
* no longer screws up when trying to write to PCI config space :)
* Supports nVidia nForce chipsets
TODO:
* Make 4 channel SATA controllers work (currently only recognizes first 2)
* SATA PHY initialisation (needed for some BIOSes who might not do it)
Feel free to test this, and assign any problems with this driver to me.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21949 a95241bf-73f2-0310-859d-f6bbb57e9c96
SELECT_UNAME_ETC_LIB with TARGET_ and introduced HAIKU_* and HOST_*
counterparts.
* Use HOST_NETWORK_LIBS for building remote_disk_server.
* Also got rid of {R5,BONE,DANO,HAIKU}_COMPATIBLE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21912 a95241bf-73f2-0310-859d-f6bbb57e9c96
as all directories that might be needed by private kernel headers (arch,
platform,... headers).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21872 a95241bf-73f2-0310-859d-f6bbb57e9c96
of the host platform. The libtracker Jamfile seems to be the only one that
needs another exception.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21827 a95241bf-73f2-0310-859d-f6bbb57e9c96
added $(HAIKU_GCC_LIBGCC) to HAIKU_KERNEL_ADDON_END_GLUE_CODE as suggested by Ingo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21795 a95241bf-73f2-0310-859d-f6bbb57e9c96
computed as '.' which resulted in output path ending with '/.', causing mkdir to choke.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21778 a95241bf-73f2-0310-859d-f6bbb57e9c96
AddDirectoryToHaikuImage with attributes does also work for directory
names with spaces now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21761 a95241bf-73f2-0310-859d-f6bbb57e9c96
(or rdef) files which will be converted to attributes and added to the
installed directory. Adjusted build_haiku_image script accordingly.
* Added directory data/image_directories, which is where the resource
files for the directories attributes shall be stored. As naming
convention I suggest using the target directory path with slashes
replaced by hyphens, e.g. home-config-bin.rdef for home/config/bin.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21711 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Added ResAttr rule, which converts resource (or rdef) files to a
file with attributes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21708 a95241bf-73f2-0310-859d-f6bbb57e9c96
manager, some drivers).
* Commented out nbd for the time being and added remote_disk.
* Consequent use of boot links.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21604 a95241bf-73f2-0310-859d-f6bbb57e9c96
generates a C source file defining an array variable containing the file's
data. DataFileToSourceFile is the respective jam rule.
The idea is to directly built the boot archive into the boot loader for
network booting (and thus avoiding to download it from somewhere). In
case of PXE this doesn't work, though, due to restrictions to the size
of the NBP. Maybe Open Firmware is less restrictive.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21602 a95241bf-73f2-0310-859d-f6bbb57e9c96
work on arbitrary "containers". The image rules are just
specializations.
* Added rules, a definition file (build/jam/NetBootArchive), and a shell
script for creating a gzipped tar archive containing kernel and modules
required for network booting (the contents may need some fine-tuning).
ATM it can be built via the haiku-netboot-archive pseudo target. It is
generated in the output directory (e.g. "generated").
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21591 a95241bf-73f2-0310-859d-f6bbb57e9c96
To log in, user is "baron" (if you haven't overridden the $USER environment variable),
and the password is empty (ie. just press return).
Note, the password is currently hardcoded into src/system/libroot/posix/pwd.c.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21561 a95241bf-73f2-0310-859d-f6bbb57e9c96
relevant for the image creation.
* The CopySetHaikuRevision propagates the value of the
HAIKU_INCLUDE_IN_IMAGE variable from the source to the target.
* Propagate the value of HAIKU_INCLUDE_IN_IMAGE from "kernel" to
"kernel_$(TARGET_ARCH)".
Now "jam update-install kernel" should work as expected.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21527 a95241bf-73f2-0310-859d-f6bbb57e9c96
Gerald.
* Added Gerald Zajac and Jan Kloetzke to the list of contributors.
* Added the s3savage driver and accelerant to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21478 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use Object{Cc,C++}Flags instead of setting {CC,C++}FLAGS on the
objects directly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21438 a95241bf-73f2-0310-859d-f6bbb57e9c96
-The biggest problem with linking host libraries (libbe_build and libroot_build) was not having the source files compiled with the -fPIC flag. As far as I can tell, we want to do this on all of the other host platforms as well, so hacked the jam files a bit to add it.
Forgive me if I've committed more Jamfile sins.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21423 a95241bf-73f2-0310-859d-f6bbb57e9c96
1. Deleted headers/shared/
2. Added a Jamfile to src/shared to build it into a static library libshared.a.
3. Removed my changes in the build/jam directory.
4. Have ShowImage include libshared.a.
I forgot to add AboutWindow.h to headers/private/shared. I will do that next.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21402 a95241bf-73f2-0310-859d-f6bbb57e9c96
despite being talked about repeatedly, does not currently exist.
Adding this required adding some new Jam rules to deal with this shared source
directory and headers. I had some fun figuring this out. Despite writing
articles about Jam in the Haiku newsletter a few years ago I still find Jam to
be a PITA at times.
But my solution seems to work pretty well. Basically you just call the rule
UseSharedSource and pass the name of the shared source file you want to use.
This rule sets up the header directories and the right Jam variables for the
source file. You then add the source file to the source list in the Application
rule like any other source file.
I also made the authors list sent to the about window constructor null
terminated instead of passing the size of the array, as suggested by Hugo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21391 a95241bf-73f2-0310-859d-f6bbb57e9c96
/boot/beos/apps, but a folder containing links to _selected_
apps in that folder
* a new entry "Desktop Applets" has been added, which contains
all the apps that you either do or do not start at system boot,
but don't need frequent access to
* some apps have been hidden:
- ShowImage and Expander are usually not
directly started on their own, but through double clicking documents
- AboutSystem is invoked elsewhere from the Leaf menu, so it doesn't need
to clutter the Applications menu
* we almost introduced a third category for rarely used apps, but in the
end it would only have contained Installer, Icon-O-Matic and Diskprobe,
and we felt that it is ok to leave these in the Applications menu, as long
as their number is small
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21374 a95241bf-73f2-0310-859d-f6bbb57e9c96
manually because of some not-yet-fixed deficiencies in the disk device manager.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21205 a95241bf-73f2-0310-859d-f6bbb57e9c96
compatibility relation to the official Haiku distribution. "official"
is for the official Haiku distribution itself, "compatible" for Haiku
Compatible (tm) distros, and "default" for all others (the default value
for the option). The build system variable HAIKU_DISTRO_COMPATIBILITY is
defined accordingly, and one of the
HAIKU_DISTRO_COMPATIBILITY_{OFFICIAL,COMPATIBLE,DEFAULT} macros is
defined for source code and rdefs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21177 a95241bf-73f2-0310-859d-f6bbb57e9c96
libroot). It's available in the kernel through the private
get_haiku_revision() and added to the kernel syslog output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21173 a95241bf-73f2-0310-859d-f6bbb57e9c96
building on Mac OS X (Darwin). A problem with makebootable remains.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21165 a95241bf-73f2-0310-859d-f6bbb57e9c96
platforms. Funny that it still isn't the default, anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21083 a95241bf-73f2-0310-859d-f6bbb57e9c96
also renamed their accelerants and settings files accordingly.
* Added Mandelbrot and GLDirectMode as demo applications.
* Moved CortexAddOnHost to /bin.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21010 a95241bf-73f2-0310-859d-f6bbb57e9c96
the image.
* Moved "nc" to the alphabetically ordered position.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20656 a95241bf-73f2-0310-859d-f6bbb57e9c96
beginning of the string; it was formerly matched anywhere.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20610 a95241bf-73f2-0310-859d-f6bbb57e9c96
xattrs. It can be enabled with the configure switch "--use-xattr". Note
that the amount of data stored in attributes may be limited by the used
file system -- e.g. AFAIK ext3 has a limit of one block (usually 4 KB)
for all attributes of a file, which might not suffice. XFS should be
fine, as should ReiserFS 3.6 (or any FS which stores attributes in
hidden files).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20609 a95241bf-73f2-0310-859d-f6bbb57e9c96
translators pass "true" (was used before), but I suppose most of them
don't really need it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20605 a95241bf-73f2-0310-859d-f6bbb57e9c96
shuffled "isExecutable" to the end. The new order favors the common use
cases. Adjusted all Addon invocations and while at it also removed
separate LinkAgainst invocations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20604 a95241bf-73f2-0310-859d-f6bbb57e9c96
with image files. E.g.
jam -q update-image libbe.so kernel_x86
will only build libbe.so and the kernel (if necessary) and copy them
onto the already existing Haiku image. The MIME DB will not be
reinstalled, and only those source directories will be copied for which
the AddSourceDirectoryToHaikuImage rule is given a second argument
(e.g. "1"). The image will otherwise remain unchanged.
The "update-vmware-image" and "update-install" work similarly for the
VMWare image and the directory installation respectively. Note that, due
to the way the VMWare image is created (prepending a header to the
standard image), the file itself is fully rebuilt, i.e. changes made
during the emulation will be lost after updating the VMWare image.
The feature requires Haiku's jam. With other jam versions a similar
effect can be reached by accordingly setting the HAIKU_IMAGE_UPDATE_ONLY
and HAIKU_INCLUDE_IN_IMAGE in the UserBuildConfig file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20602 a95241bf-73f2-0310-859d-f6bbb57e9c96
line to jam that contains build targets and that will be executed by
the build system after building the targets and replacing their
occurrences in the command line by their paths. The keyword indicating
such a command line is "run", targets are marked by a leading ":".
E.g.:
jam -q run ':<build>xres' -l :libtracker.so
This builds the xres tool for the host platform and libtracker.so for
Haiku, and afterwards lists the resources libtracker.so contains. Note,
that this feature requires using Haiku's jam version.
The functionality is implemented by the new RunCommandLine rule, which
can, of course, also be used in the UserBuildConfig.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20598 a95241bf-73f2-0310-859d-f6bbb57e9c96
invocation, and NewUniqueTarget, which returns a unique target name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20597 a95241bf-73f2-0310-859d-f6bbb57e9c96
operate manually on digit lists, so they are certainly not fast and shouldn't
be used excessively, but at least it's possible to do calculations in Jam now,
should the need arise.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20596 a95241bf-73f2-0310-859d-f6bbb57e9c96
again for target libbe_test. Added respective syscall stubs and other functions
to libhaikucompat.a.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20447 a95241bf-73f2-0310-859d-f6bbb57e9c96
Integration patch from kaliber as of bug #1127, with a minor fix. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20438 a95241bf-73f2-0310-859d-f6bbb57e9c96