Commit Graph

86 Commits

Author SHA1 Message Date
Alexander von Gluck IV 67b2c0fee3 PowerPC: Transition back to CHRP script.
* After examining MacOS toolbox roms, I think i've got
  this nailed down. The MacOS Toolbox rom contains chrp
  code at the top and binary code at the bottom.
* The Raw format for the chrp seemed to cause issues with the
  OpenFirmware boot process on some systems.  NetBSD uses a '-'
  file type.
* The format of the chrp seems a lot more sensitive across machines
  than described. Ensure our returns and spaces are even.
* Booting with the 'c' key is still working on my older OpenFirmware
  machine with the chrp script. The bitmap logo is a half black, half
  white box.
* I removed the &device; alias for now for troubleshooing. It also may
  of been causing compatibility issues. More testing is needed.
2013-06-05 03:24:42 -05:00
Alexander von Gluck IV 1072a5e777 PowerPC: Fix 'c' key booting of CD on Apple hardware
* It seems like not all NewWorld OpenFirmware
  versions support booting from CHRP scripts.
* Move Haiku elf bootloader into bootloader.b
  type tbxi. As it is in the blessed directory
  it is picked up by cd:,\\:tbxi
* Adjust bootinfo.txt to point to bootloader
  &device; ensures that the image can be started
  regardless of source media
* Adjust bootinfo.txt to use \\ as base. \\ is an
  alias for the blessed folder on the boot media
* Rename ofboot.b to ofboot.chrp to avoid confusion
* Add .txt, .html to hfs.map to identify them properly
* The haiku-boot-cd-ppc.iso now boots on my G3 PowerBook
  by holding the 'c' key at startup. The boot menu colors
  are incorrect (white background) but it is a step in
  the right direction.
* New chrp script. Blank icon for the moment, if someone
  could figure out how to make a chrp icon that would be
  neat.
* Tested working on qemu and real hardware. Need to test
  on a more modern PowerPC Mac however.
2013-06-04 22:08:25 -05:00
Ingo Weinhold 33c254876c ImageRules: Allow build feature annotated params in Add* rules
More precisely in the rules that take multiple targets. It doesn't make
that much sense e.g. for AddSymlinkTo*.
2012-12-09 04:07:48 +01:00
Jérôme Duval 4107ac9cda Cleanup of remains of subversion in the build system 2012-10-30 22:36:32 +01:00
Matt Madia 1a53a4d3f5 Refactored the stripping of debug symbols to be a per-archive basis.
Setting 'HAIKU_STRIP_DEBUG_FROM_OPTIONAL_PACKAGES = 1' will enable the
mechanism. By default all packages will be stripped. Passing anything
other than '1' or 'true' in the InstallOptionalHaikuImagePackage call
will disable it for a particular package.
2012-09-16 19:41:24 -04:00
Oliver Tappe 323b65468e Filtered flat import of Oliver's svn package management branch
Bring the changes that aren't package management related and the ones
that are but don't take effect as long as they are ignored by the build
system into the master.

Summary of changes:
* Introduce private header <directories.h> with constants for a good
  deal of paths that should usually be retrieved via find_directory().
* Replace hard-coded paths by using find_directory() or the
  <directories.h> constants (e.g. in drivers and the kernel).
* Add find_directory() constants needed for package management.
* Add __HAIKU_ABI_NAME and B_HAIKU_ABI_NAME macros.
* src/apps/deskbar: BeMenu.* -> DeskbarMenu.*,
  DeskBarUtils.* -> DeskbarUtils.*
* Change deskbar menu settings directory from ~/config/be to
  ~/config/settings/deskbar.
* Other smaller cleanups, changes, and fixes.
2011-11-25 06:17:07 +01:00
François Revol 97e22a9b50 Workaround missing mkisofs in Debian sid for ppc boot CD. It needs a rewrite anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 00:02:02 +00:00
Philippe Houdoin d28b0b06d0 Of course, when incomptability kick in, it's never limited only to
option string: FreeBSD's stat command line don't use  %s format specifier for
file size. Instead, %s specifier is unused at all and they goes with %z.
For file Zize, I guess...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 13:31:56 +00:00
Philippe Houdoin c3510ace83 When building floppy boot image on FreeBSD, the stat command line fail on
the -c/--format option which is unsupported on this platform.
Add a fallback, which should fix #7613.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-05-30 09:52:08 +00:00
Matt Madia 50ca9a25c9 As per Ingo's comment 13 in #7286, removed support for isGCCAgnostic.
There should be separate gcc 2 and gcc 4 packages instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40827 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-05 22:55:31 +00:00
Philippe Houdoin d01a7e01ed Revert mistaken committed change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-19 17:17:45 +00:00
Philippe Houdoin 5a2f51f20e Added WebPTranslator to Haiku image, with due credits in AboutSystem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39516 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-19 15:45:37 +00:00
Philippe Houdoin b2b54ce0f6 Check in BuildFloppyBootImage1 that haiku_loader could actually fit
before the image archive.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-11 10:23:22 +00:00
Andreas Färber 8b006b36e7 Allow to suppress individual Optional Packages
Add Jam rule SuppressOptionalHaikuImagePackages as a mechanism to keep
packages from being installed.

Extend the UserBuildConfig.ReadMe document to cover the new command.

Closes ticket #6260.

Changes from v1:
* Simplified IsOptionalHaikuImagePackageAdded as suggested by Ingo.
* Added example as documentation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@38100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-08-14 16:43:55 +00:00
Matt Madia 61fae90060 Some improvements for installoptionalpackage
* copy the needed jam files during compile time. This ensures the correct data
 files are used, for example in non-trunk builds
 * -f now only removes the generated at runtime listing of available packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-07-10 22:38:47 +00:00
Matt Madia 4676058003 Record the installed optional packages to common/data/InstalledPackages.
This will be utilized by installoptionalpackage, to determine which packages
are already installed in the system and thus should not prevent the
installation of other packages.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37239 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-23 21:27:45 +00:00
Matt Madia 4a71fc35b6 InstallSourceArchive now copies source archives to _sources_/, which in turn
is ignored by Installer. Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36517 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-28 13:38:49 +00:00
Matt Madia 4eb0a8c2fd Enhance InstallOptionalHaikuImagePackage to accept a new parameter, which
indicates the archive to be usable with either GCC. When utilized, the
packages shared libraries will automatically be symlinked in the alternative
gcc subdir, eg common/lib/gcc4. At the moment, packages that set isCDPackage
are not supported, as Installer needs to be enhanced.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-24 19:52:36 +00:00
Matt Madia 18a69c72f6 Condensed build_zip_archive & build_zip_archive into a single script,
build_archive. Updated ImageRules accordingly. Tested on the following:
 * jam -q -sTARGET_BOOT_PLATFORM=pxe_ia32 pxehaiku-loader haiku-netboot-archive
 * jam -q haiku-boot-floppy
 * jam -q haiku-alternative-gcc-archive


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-30 05:32:50 +00:00
Ingo Weinhold f29f258224 * DoCatalogs:
- Cleaned up and prepared automatic globbing of the catkeys files.
    Currently commented out as it breaks the build.
  - Removed the AddFilesToHaikuImage invocation, which doesn't belong there.
    Instead we set the variable HAIKU_CATALOG_FILES on the target and
    automatically add the catalogs of a target in AddFilesToContainer.
* LinkApplicationCatalog: Pass the language name to the actions via variable.
  Fixes the "independent target" warning.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-29 21:36:00 +00:00
Matt Madia 0e82d313d6 Allows AddOptionalHaikuImagePackages and OptionalPackageDependencies to work in
arbitrary order. Follow-up to r35830.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-15 16:11:47 +00:00
Matt Madia b353282928 Extended AddWifiFirmwareToHaikuImage to support a boolean, which determines
whether to extract the firmware archive onto Haiku Image or to simply copy
it intact. This allows the ipw2100 and iprowifi2200 firmware archives to be
copied onto the default images. Fixes #5523


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-03 17:23:06 +00:00
Oliver Tappe bbaf002932 * fixed copy'n'paste bug in comment
* automatic whitespace cleanup

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-02 22:27:14 +00:00
Matt Madia 0010ec111c Expander checks B_USER_DATA_DIRECTORY and B_COMMON_DATA_DIRECTORY for
expander.rules, not B_COMMON_ETC_DIRECTORY.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-02 17:39:14 +00:00
Matt Madia ce811940ba Moved the optionalpackage P7zip's code for creating expander.rules into a new
rule AddExpanderRuleToHaikuImage.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-03-02 14:41:06 +00:00
Ingo Weinhold fc5e13e931 Enforced 80 columns limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-27 18:23:52 +00:00
Ingo Weinhold c7b1040cde From: Matt Madia
* Added "extractedSubDir" parameter to ExtractArchiveTo{Container,HaikuImage}.
  If given it specified the path of the subdirectory in the archive that
  shall be extracted.
* Added AddWifiFirmwareToHaikuImage rule for extracting Wifi firmware
  archives onto the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-27 18:15:47 +00:00
Ingo Weinhold 05bbc668af From: Matt Madia
* InstallOptionalHaikuImagePackage: Made the first argument an actual file
  name, i.e. the extension ".zip" is no longer appended by it.
* Renamed rules UnzipArchiveTo{Container,HaikuImage} to
  ExtractArchiveTo{Container,HaikuImage} and generalized them to support
  tgz/tar.gz archives (implemented in build_haiku_{image,cd}).
* Removed DownloadOptionalPackage. DownloadFile is used instead.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35634 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-27 17:48:12 +00:00
Ingo Weinhold 76fa0be374 Patch by Matt Madia:
* Renamed DownloadFile to DownloadLocatedFile.
* Pulled a generalized rule DownloadFile out of DownloadOptionalPackage.
* Added InstallSourceArchive rule which can be used in OptionalPackages to
  add sources for installed packages to the image.
* Added configure option --include-sources to enable including the sources
  for third party software in the image.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35617 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-02-25 16:13:22 +00:00
Oliver Tappe 783930d916 * reverted the part of r35362 that introduced support for minor ABI versioning - my evil twin made
me do that!

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-31 23:41:44 +00:00
Oliver Tappe 418b8758bf * added support for minor ABI versions to the SharedLibrary rule, as otherwise updating libz.so
could prove to be a major PITA (because of all the dependencies that would need to be rebuilt)
* when adding a library to the image, its optional minor abi version is taken care of, too (i. e. a
corresponding link is created).
* the ABI-related links in /system/lib are now replicated in /boot/develop/lib/<arch>

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-31 20:53:29 +00:00
Oliver Tappe 291785f88f * added support for library (API-)versioning and private system libraries to
build system
* declared ICU-libs as private system libraries, which causes them to no longer
  be available for building software (they no longer are linked from the 
  development lib folder, so the linker won't find them)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35323 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-27 23:13:49 +00:00
François Revol f175afefc3 Use the amiga-specific checksum fixing tool when building the Amiga boot floppy image (not usable yet).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-01-11 00:17:10 +00:00
Ingo Weinhold 42f2c2d099 Added TODO.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-12-22 15:02:35 +00:00
Axel Dörfler 492dd892ce * Removed /system/etc directory.
* /etc now points to /boot/common/etc/, and the remaining contents of the former
  "etc" are put there now, as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-10 14:26:42 +00:00
Oliver Tappe 84eac0b07c closing #4453:
* fixed precedence problem in jam rule that caused an if to evaluate to true, no matter
  if a cd or an image was being built


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-08 21:07:27 +00:00
Stephan Aßmus 6ab71ad3b7 Introduced new buildsystem feature that places certain packages into _packages_
on the target image instead of extracting them, but only if the target image
is a CD image. This then speeds up installing a great lot, at the expense of
certain applications not being available in LiveCD mode. This affects
* the revision control tools and their dependency libraries,
* autotools
* texinfo
* perl and python


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-08 11:45:52 +00:00
Ingo Weinhold 6c25a957e0 Fixed the corruptions of the generated image scripts that could happen with
multiple jobs. The problem was that the dummy targets used to compose the
scripts were independent from each other and jam could thus execute their
respective actions concurrently. We do now create a dependency chain between
the dummy targets of each script, so that jam is forced to execute the actions
sequentially.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31419 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-06 12:24:17 +00:00
Ingo Weinhold e20c80b57f Added new optional parameter to AddSymlinkToHaikuHybridImage allowing to create
the symlink in a subdirectory for the alternative gcc.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31149 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-21 10:57:01 +00:00
Ingo Weinhold 1b56bd2b40 * Added rule CopyDirectoryToAlternativeGCCArchive, analogous to
CopyDirectoryToHaikuImage just for the alternative GCC.
* Added rules Add{Files,Symlink}ToHaikuHybridImage. Those call both the
  Add{Files,Symlink}toHaikuImage and Add{Files,Symlink}toAlternativeGCCArchive
  rules, the latter with an optionally slightly changed parameter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-27 00:42:04 +00:00
Ingo Weinhold a474455132 Changed the way the zip archive with the alternative gcc libraries is built.
Now that's done like building the network boot archive, which gives us a lot
more flexibility for defining its contents.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-25 01:21:32 +00:00
François Revol 9c08ace28c Add the checksum required step for atari_m68k on the boot floppy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-27 20:00:28 +00:00
François Revol 4eae7ffa1e Use arch specific floppy image size, Atari machines don't know about 2.88kB... plus it still fits in.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-27 19:28:13 +00:00
Michael Lotz 4585fda629 The bootfloppy image has become so fat that it simply doesn't fit the 1.44 size
anymore. This was the case for GCC4 already but is now also true for GCC2. We
might want to look into that again, or we can just ignore it as noone is really
using floppies anymore and for eltorito boot we can live with the 2.88 floppy
emulation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30312 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-22 00:17:22 +00:00
Ingo Weinhold d339b68bef * Added UnzipArchive rule which unzips a zip file into a target directory.
* Added DownloadOptionalPackage which is mainly a wrapper around DownloadFile
  preventing the package from being downloaded twice, even if invoked more
  than once.
* InstallOptionalHaikuImagePackage uses DownloadOptionalPackage now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-08 09:55:33 +00:00
Axel Dörfler 317bd7dda3 * Changed directory structure as suggested on the mailing list.
* Made the TimeZoneView less error prone, and also actually use Haiku code (the
  previous check didn't work since it used #if, not #ifdef).
* Also took the liberty to rename our boot loader to haiku_loader, since I had
  to update the nasm binary anyway. Updated the assembly sources to nasm 2.0.
* I haven't found where the synth location in the MIDI code is specified,
  though.
* Also, NetBootArchive, and FloppyBootImage haven't been updated yet. Will do
  so next.
* Some optional packages still put their license to beos/etc/licenses. I didn't
  update them yet, as we'll probably do so anyway at some point. Also, I think
  we might want to introduce a common/data/licenses instead for those.
* If you encounter any problems, please tell!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-03 09:02:44 +00:00
Ingo Weinhold d15b54c97f Removed HAIKU_ADD_ALL_OPTIONAL_PACKAGES build variable. It did more harm than
good lately.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29608 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-19 12:15:13 +00:00
Ingo Weinhold 37aefc9c6f * Moved jam argument processing to new build/jam/CommandLineArguments.
* Check the first argument for "help" as well. If given print a somewhat
  helpful text. Consider this my excuse to close ticket #1883. :-)
* Track available and added optional packages and fail, if an optional package
  is requested that doesn't exist. Closes ticket #3332.
* Check for duplicate build profile definitions and fail if encountered.
  Closes ticket #3333.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29298 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-23 22:33:09 +00:00
Michael Lotz f96525f73f The GCC4 built boot floppy archive is too large, it doesn't fit on a 1.44 image.
Therefore we switch to building a 2.88 floppy image in that case so it's at
least usable to build a bootable CD.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-15 14:54:05 +00:00
François Revol 1c532eedf1 Make the tgz archive offset in floppy image settable. Set it to 270k for now, until zbeos gets some diet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-15 03:30:00 +00:00