Commit Graph

2301 Commits

Author SHA1 Message Date
Ingo Weinhold c01380b1b7 Move package info pre-processing to jam build system
Also, pre-process all package infos (not only the generic ones) and
define the macro HAIKU_BOOTSTRAP_BUILD, if building a package for a
bootstrap image.
2013-07-07 15:02:29 +02:00
Ingo Weinhold ec945b7f0d ReleaseBuildProfiles -> Default*, add bootstrap profiles 2013-07-07 14:21:51 +02:00
Ingo Weinhold 78f4c163d4 Beginnings of support for building a bootstrap Haiku image
Copy:
* packages: Haiku -> HaikuBootstrap
* images: HaikuImage -> HaikuImageBootstrap
... and remove some unncessary content.

Setting the jam variable HAIKU_BOOTSTRAP_BUILD enables using the
bootstrap files.
2013-07-07 13:45:38 +02:00
Ingo Weinhold 7aa46ed97d Move common image building code to HaikuImageCommon 2013-07-07 13:21:26 +02:00
Ingo Weinhold db11a1104c Move common image building code to HaikuImageCommon 2013-07-07 12:32:45 +02:00
Ingo Weinhold 7418499c4a Remove more optional package related left-overs 2013-07-07 11:14:28 +02:00
Ingo Weinhold 2bab2851aa Remove OptionLibPackages 2013-07-07 10:49:20 +02:00
Ingo Weinhold e8c5236a9c Move image definition jamfiles to build/jam/images 2013-07-07 10:44:43 +02:00
Ingo Weinhold 056e9bb620 Add some more packages to the HaikuPorts repository 2013-07-06 18:06:22 +02:00
Ingo Weinhold 014eed80e2 Change repository directory layout
* Under the base URL there are supposed to be the repository files and a
  subdirectory "packages".
* Fix the repository URL related confusion introduced earlier. The URL
in
  the repository info (and thus in the repository file) is supposed to
  be the base URL for the repository. It is not a (potentially)
  different base URL for the package files. Package and repository
  files were supposed to live in the same directory. Now, by requiring
  the package files to live in a subdirectory -- which can also be a
  symlink -- we gain some flexibility.
  The URL in the repository config is usually the same as the in the
  repository info, unless it refers to a mirror site. This allows for
  mirrors to copy the original repository verbatim.
* Remove the PackageURL rule and introduce a DownloadPackage rule
  instead. The URL for a package file cannot be computed in the jam
  parsing phase anymore, as it contains the hash value of the package
  list.
* BRepositoryConfig: Add PackagesURL() for convenience.
2013-07-06 18:06:02 +02:00
Ingo Weinhold 2afaeda8b7 Copy repository config files to the image
... to common/settings/package-repositories. This way the used
repositories are already known to pkgman.
2013-07-06 02:31:31 +02:00
Ingo Weinhold d72ce06673 Adjust to changed HaikuPorts repository layout
The package kit actually requires the files "repo", "repo.info",
"repo.sha256" to be located under the repository base URL, so the
approach to name the repository file "repo-<hash>" doesn't work.
Now there's a directory "<hash>" which contains the files.

This commit moves the computation of the hash and downloading the
repository file from the build_haiku_image script to the jam build
system. The repo.info is also downloaded and a repository config file
is generated.
2013-07-06 02:29:51 +02:00
Ingo Weinhold 531a3d42bc Add rule ChecksumFileSHA256 2013-07-06 02:19:51 +02:00
Ingo Weinhold 46686fe6c0 Download*File rules: add optional source target
If specified the path to the source target can be used in the URL via
"$source".
2013-07-06 02:19:38 +02:00
Ingo Weinhold 3758560637 BuildSetup: remove obsolete dir variables 2013-07-06 02:10:10 +02:00
Ingo Weinhold 627626afd4 GeneratedRepositoryPackageList: defeat localization
Set LC_ALL=C, so "sort" produces useful results.
2013-07-05 14:28:09 +02:00
Ingo Weinhold 458b56a68c Also install the be_book package in system 2013-07-05 14:09:09 +02:00
Ingo Weinhold f0273200d4 devel packages for mandatory packages must be in system as well 2013-07-05 14:09:09 +02:00
Ingo Weinhold 1faf74732d Update packages binutils, gcc, add missing bepdf source package 2013-07-05 13:26:12 +02:00
Ingo Weinhold 98c6dfa41e Switch build system from optional package to repositories
* Build libsolv and the dependency solver part of the package kit for
  the build platform.
* Add build tool get_package_dependencies. Given a list of package files
  and a list of repository files it determines the additional packages
  that need to be retrieved from the repositories and prints their URLs.
* Add rules to work with external repositories in the build system
  (build/jam/RepositoryRules):
  - PackageRepository declares an external repository with all its
    packages. The URL of the repository file isn't specified. It is
    computed from a given base URL and the SHA256 hash of the list of
    package files.
  - GeneratedRepositoryPackageList generates a file containing the file
    names of all packages in a repository.
  - IsPackageAvailable returns whether a package is available in any
    repository.
  - PackageURL returns the URL for a package.
* Declare the HaikuPorts repository for x86_gcc2
  (build/jam/repositories/HaikuPorts/x86_gcc2).
* Add rule AddHaikuImagePackages to add a package to the image and rule
  IsHaikuImagePackageAdded to determine whether a package has been
  added.
* OptionalPackages: Remove all entries that just downloaded and
  installed an external package. AddHaikuImagePackages can be used
  instead and is used in the remaining entries. Also move the remaining
  optional package dependency declarations from
  OptionalPackageDependencies here.
* ExtractBuildFeatureArchives: Instead of the URL parameter a package
  name must be specified now. This allows to simplify BuildFeatures
  significantly, since there's no dealing with URLs anymore. "if" out
  the entries that aren't supported yet.
* build_haiku_image: For the packages installed in system and common
  resolve their dependencies and download and install them as well.
2013-07-05 10:51:42 +02:00
Ingo Weinhold 2ebcd86dfe Add configure option --host-only
When specified, the build will be configured for building build host
tools only.
2013-07-03 23:19:00 +02:00
Jérôme Duval d3b108c53d virtio_scsi: added to the image.
* device_manager: scans busses/scsi for generic drivers.
2013-07-02 22:48:25 +02:00
Ingo Weinhold ff2e520912 Remove the old "CVS" package rules
... and all their invocations.
2013-06-30 18:59:11 +02:00
Ingo Weinhold 301f4b463a Expander: also read rules from data directories
* ExpanderSettings: Use a settings directory "expander" and rename
  settings file to "settings".
* ExpanderRules: Read expander rules from "rules" files in the settings
  directory, then from files in expander/rules subdirectories of the
  installation location data directories, and finally add the built-in
  rules. This allows packages to provide expander rules (as already
  done by the p7zip package).
* OptionalPackages: Remove AddExpanderRuleToHaikuImage invocations.
* ImageRules: Remove Expander rule file related rules.
2013-06-30 13:29:48 +02:00
Ingo Weinhold 94307089f9 Update packages ffmpeg, openssh, p7zip 2013-06-30 11:49:40 +02:00
Ingo Weinhold 26ea70667a Deskbar: use a virtual directory for the user-configurable menu
* Deskbar now uses ~/config/settings/deskbar/menu_entries for its menu,
  falling back to /system/data/deskbar/menu_entries, when the former
  doesn't exist. The latter always exists and is a virtual directory
  merging the deskbar/menu subdirectories of ~/config/settings/ and
  <any installation location>/data/. So, if a package provides a
  deskbar menu symlink, it is added automatically when the package is
  activated. The user can add own menu items by putting stuff into
  ~/config/settings/deskbar/menu/, only use their own organization by
  symlinking it to menu_entries, or do fun stuff by making menu_entries
  a customized virtual directory.
* HaikuImage: No longer create any deskbar menu symlinks in the user's
  settings directory. Instead add them to the Haiku package.
* OptionalPackages: At least for the optional packages that do have
  hpkgs, no longer create deskbar menu symlinks in the user's settings
  directory.
* Move all Deskbar settings files to ~/config/settings/deskbar/ and
  drop the "Deskbar_" prefix.
2013-06-29 14:58:52 +02:00
Ingo Weinhold dbd97804ea SetType rule: add optional type parameter
If not specified the executable MIME type is used as before.
2013-06-29 14:58:52 +02:00
Ingo Weinhold 2551c12bec Update wonderbrush package 2013-06-19 05:07:27 +02:00
Ingo Weinhold b6163fd2ae Update openssh package 2013-06-18 11:57:29 +02:00
Ingo Weinhold 01293f6a5d OptionalPackages: fix syntax errors 2013-06-18 11:40:12 +02:00
Ingo Weinhold 56c3ef1d73 Disable xz-utils optional package for gcc 2 2013-06-18 11:32:23 +02:00
Ingo Weinhold 7f453e3b5f Update packages vision, wpa_supplicant, wqy_microhei, yasm 2013-06-18 11:29:00 +02:00
Ingo Weinhold e31d588184 Update several packages
* neon
* openssh
* p7zip
* pe
* subversion
* tar
* timgmsoundfont
* wonderbrush
2013-06-18 05:06:54 +02:00
Ingo Weinhold 676cc5aafe Update packages mercurial, mkdepend 2013-06-17 21:22:28 +02:00
Ingo Weinhold 98c399b8c8 Update packages keymapswitcher, libedit, libxml2, libpcre 2013-06-17 21:06:31 +02:00
Ingo Weinhold 0ac19e7d42 Update several packages
* bzip2
* ca_root_certificates
* cdrtools
* cmake
* ctags
* curl
* cvs
* doxygen
* freetype
* git
* groff
* libsolv
* man
* nano
* readline
* sqlite
* python
2013-06-17 19:18:05 +02:00
Ingo Weinhold 8d1a9545a9 Update apr[_util], be_book, bepdf, jam packages 2013-06-16 03:54:50 +02:00
Ingo Weinhold 46792e5997 Update basic development packages 2013-06-15 23:03:59 +02:00
Ingo Weinhold 12629b106e Update expat package 2013-06-14 00:48:13 +02:00
Ingo Weinhold a20eb7f497 Update libsolv package
Also make use of new build feature rules.
2013-06-14 00:48:12 +02:00
Ingo Weinhold 1d14716b9f Some renaming of zlib related jam variables 2013-06-14 00:48:12 +02:00
Ingo Weinhold e4bd005daf Update jpeg package
* Also make use of new build feature rules.
* Since the hacky long_jump_buffer field has been removed from the
  jpeg_error_mgr struct in the new package, the structure is now
  wrapped in the JPEGTranslator code to achieve the same behavior.
2013-06-14 00:48:11 +02:00
Ingo Weinhold e9f440fdfd Update libpng package
Also make use of new build feature rules
2013-06-14 00:48:11 +02:00
Ingo Weinhold 29f8805f6c Update freetype package
Also use the new build feature rules
2013-06-14 00:48:10 +02:00
Ingo Weinhold e2c74e414c Remove unused MikMod build feature 2013-06-14 00:48:09 +02:00
Ingo Weinhold 14d5e307b4 Update ffmpeg package and its requirements
Also make use of new build feature rules.
2013-06-14 00:48:09 +02:00
Ingo Weinhold e97e4b74a0 Update glu and mesa package
Also use the new build feature rules.
2013-06-14 00:48:08 +02:00
Ingo Weinhold 178da21ad1 Update icu package
Also use the new build feature rules.
2013-06-13 18:42:44 +02:00
Ingo Weinhold ebb78dd9b7 Update openssl package
Also use the new build feature rules
2013-06-13 16:43:40 +02:00
Ingo Weinhold 5ce950ae76 BuildFeature: missing ";" 2013-06-13 16:42:36 +02:00
Ingo Weinhold c46f5969b7 Update zlib, gettext, libiconv, ncurses packages 2013-06-13 15:13:12 +02:00
Ingo Weinhold beeaf379b1 HaikuDevel: Fix copying the build feature headers
We have to use actual targets that cause the respective download and
extract the packages. Otherwise the build fails when the packages
haven't been extracted yet.
2013-06-08 00:55:12 +02:00
Ingo Weinhold 444b035d5d BuildHaikuPackage rule: Locate extract script
Missed that when adding the script. Therefore it would be created in the
current directory and when building multiple packages concurrently the
script would be overwritten.
2013-06-08 00:20:24 +02:00
Ingo Weinhold 52a43b19ff MakeLocate rule: Avoid directory dependency, if already located
Only create the directory dependency for a target, if that's where the
target will actually end up. If it has already been located before, do
nothing.
2013-06-07 15:31:03 +02:00
Ingo Weinhold bc96e8f30c Add more robust generic attribute emulation variant
The new configure option "--use-xattr-ref" enables an xattr assisted
variant of the generic attribute emulation. Instead of using the inode
ID of a node to identify its attribute directory, we use a reasonably
unique random 128 bit number, which we generate and attach as an
attribute to the node. This way, when a node changes its inode ID
(defragmentation?) or the inode ID of a removed node with a left-over
attribute directory is reused, attributes won't get mixed up.

The old method is still used for symlinks (since on Linux only
priviledged users can write attributes on symlinks), but those usually
only have a rather boring BEOS:TYPE attribute, so mix-ups wouldn't be
that problematic anyway.
2013-06-07 02:27:48 +02:00
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
Rene Gollent 35a2e0e615 Update Vision package again.
- Reworks how settings are handled: if the settings file has not yet
been created or is empty, we now populate defaults from
appdir/InitialSettings.
2013-06-04 20:48:08 -04:00
Rene Gollent 65af2da017 Update Vision package.
- Update to version 2013-06-04, backports haiku notification support from trunk.
2013-06-04 19:59:12 -04:00
Ingo Weinhold 48581f9891 FHaikuPackageGrist: Avoid potential package name clashes 2013-06-04 23:59:37 +02:00
Ingo Weinhold a532c57308 Remove /boot/{apps,preferences} symlinks
And adjust all remained occurrence in the tree accordingly (->
/boot/common/{apps,preferences}).
2013-06-04 23:36:46 +02:00
Oliver Tappe 872e7aa2a6 Rename haiku_cross_devel packages.
* haiku_cross_devel is now haiku_cross_devel_sysroot
* haiku_cross_devel_wrapper is now haiku_cross_devel
2013-06-04 22:37:59 +02:00
Oliver Tappe eeddc9fd26 Fix paths in haiku_cross_devel packages.
* since this is now meant to be installed into an architecture-specific
  (sysroot-)folder, we need to drop the architecture-specific subpaths
2013-06-04 14:25:34 +02:00
Oliver Tappe 02783d54bd Add new package haiku_cross_devel_wrapper.
* this package wraps the haiku_cross_devel package (i.e. it contains
  that package in /develop/cross)
* the wrapper package is meant to be installed into the system 
  hierarchy, from where haikuporter will fetch the contained package
  when needed
2013-06-04 00:27:00 +02:00
Oliver Tappe 59e2e2f3a7 Adjust handling of package infos.
* add HAIKU_PACKAGING_ARCH, which is set to the target packaging 
  architecture
* introduce support for generic package infos, which are package infos
  that are the same for all architectures, except for the declaration
  of the package architecture itself
* move package info files underneath architecture-specific or generic
  folder
2013-06-04 00:24:37 +02:00
Ingo Weinhold ba96552b6a Support extracting archives to the packages we build
* BuildHaikuPackage rule: Create the script that contains the extraction
  commands.
* build_haiku_package: Add extractFile() function (stripped down version
  from build_haiku_image).

In build_haiku_image the functionality was mainly used to extract the
optional packages, which is no longer done. We still need it e.g. for
the Wifi firmware packages that want to be extracted.
2013-06-01 00:32:07 +02:00
Rene Gollent ccc445576a Update Vision package.
Includes a patch by Humdinger to sentence case various strings in the UI. Thanks!
2013-05-30 22:27:43 -04:00
Ingo Weinhold 7b2016c8af Update libsolv package 2013-05-30 23:51:30 +02:00
Oliver Tappe 7ea6bb1305 Add c++-libs to haiku_cross_devel.hpkg 2013-05-30 00:22:06 +02:00
Ingo Weinhold e63bdfec75 Rename post_install dir to post-install 2013-05-29 02:24:54 +02:00
Siarzhuk Zharski 9609ed8664 KeymapSwitcher opt.package updated to 1.2.7.10
* Fixed hotkeys selector resize issue occured on latest Haiku revisions;
* Fixed handling of system-wide keymap switch mode;
* Remove BDragger from the Deskbar replicant.
2013-05-28 14:39:26 +02:00
François Revol b8ded2f897 Merge branch 'master' into sam460ex 2013-05-27 17:45:55 +02:00
Ingo Weinhold badd403c5e Update grep package 2013-05-27 04:27:26 +02:00
Jérôme Duval e6373bb39d virtio_pci: build not only for x86. 2013-05-26 19:58:54 +02:00
Jérôme Duval 78b461d6a1 Merge branch 'virtio' 2013-05-26 17:12:25 +02:00
Jérôme Duval 3aae21ab63 virtio: integrate into the build and image
* device_manager: scans busses/virtio for network device types
  and scsi controllers.
2013-05-26 16:05:53 +02:00
Ingo Weinhold 64bb883062 Support booting with a packaged boot loader
* Add new package haiku_loader.hpkg and move haiku_loader there. The
  package is built without compression, so that the stage 1 boot loader
  has a chance of loading it.
* Adjust the stage 1 boot loader to load the haiku_loader package and
  relocate the boot loader code accordingly.
2013-05-25 01:12:31 +02:00
Ingo Weinhold 01c03710f0 BuildHaikuPackage rule: Add grist to package info file
... to avoids clashes with equally named targets.
2013-05-25 01:12:30 +02:00
Ingo Weinhold 06f5437c21 Add HAIKU_PACKAGE_COMPRESSION_LEVEL build variable
It allows to control the compression level used for package creation
and update. The default (9) is *very* slow, so developers may want to
use a smaller level during the regular development process to keep
turn-around times low.
2013-05-25 01:12:26 +02:00
Siarzhuk Zharski 3bbef9dd76 Discard Termcap and switch console apps to use Terminfo
* Switch bash, debugger, less, telnet[d] and top apps to use termcap
  functionality provided by ncurses lib instead of GNU libtermcap.so;
* NetBSD version of tput utility replaced with ncurses' one. Fixes #9606;
* terminfo database is provided as mandatory package installed during
  building target system;
* Remove libtermcap module. The termcap database source and
  corresponding build rules are not removed to provide backward compatibility -
  until all optional packages will be rebuild on upcoming system version
  using terminfo. Note that gcc2 builds may require to provide termcap a bit
  longer in the sake of binary compatibility with R5 era apps.
2013-05-23 14:07:50 +02:00
Ingo Weinhold 7e7232aca8 Update cmake and libsolv packages 2013-05-20 18:21:41 +02:00
Oliver Tappe 773318958f Add new package haiku_cross_devel.hpkg
* This package is meant for providing haikuporter with a development
  environment for building cross packages.
2013-05-19 23:30:23 +02:00
Jerome Duval 1183fb71ae LocaleRules: define includesSeparator 2013-05-13 23:07:28 +02:00
Jerome Duval 1ef6da4ec3 update GCC4 package to gcc-4.7.3-haiku-130513
* based on btrev43058.
2013-05-13 19:25:19 +02:00
Jerome Duval b531a88645 HaikuImage: alphabetically order system apps. 2013-05-13 17:52:49 +02:00
Ingo Weinhold c663ca2171 Merge branch 'master' into package-management
Conflicts:
	build/jam/HaikuImage
	src/system/kernel/arch/x86/64/arch.S
2013-05-12 00:18:19 +02:00
Alex Smith 1152f6eca6 HaikuImage: Build more network drivers for x86_64. 2013-05-11 13:08:35 +01:00
Ingo Weinhold 0bfcf7312a Move deskbar menu directory to ~/config/settings/deskbar/menu
Also remove the "be" symlink in ~/config/settings.
2013-05-11 09:57:58 +02:00
Ingo Weinhold a085e81e62 Move ~/config/boot to ~/config/settings/ 2013-05-11 09:57:57 +02:00
Ingo Weinhold 8a916d8752 Don't create most empty installation dirs in home/config
Create them in home/config/non-packaged instead.
2013-05-11 09:57:57 +02:00
Jérôme Duval 052e89004c HaikuImage: simplified a bit by combining two specification lists. 2013-05-10 23:09:46 +02:00
Jérôme Duval 16a3940cca HaikuImage: added or removed targets for x86_64
* add vesa.accelerant, vesa driver, ps2, isa, bios, generic_x86 for x86_64 too
* only have reiserfs, firewire, agp_gart targets for x86
* reverted hrev43950, liblocale alias shouldn't be needed anymore
2013-05-10 22:42:10 +02:00
Jérôme Duval 215954e3e3 FFilterByBuildFeatures: fixed typo 2013-05-10 22:31:23 +02:00
Ingo Weinhold 3271dcd7f6 Update be_book and vision packages 2013-05-09 21:36:31 +02:00
Ingo Weinhold 204dee708a Use libbe_build also on Haiku
This means the build tools will no longer be built against the host
platform's libbe, which avoids compatibility problems -- e.g. an
older Haiku host libbe may not have certain features the build tools
require -- and also makes the build behave more similiar on Haiku and
other platforms. The host libroot dependency still remains and is not
easy to get rid of.

Also remove some bits of BeOS/Dano/Zeta build support.
2013-05-09 18:08:55 +02:00
Ingo Weinhold 3272998147 Remove the no longer needed mime_update.sh post install script 2013-05-09 03:43:58 +02:00
Ingo Weinhold 518840e305 Complete MIME related support for image/package creation
* Update MimeSet rule to use the MIME DB the build system creates.
* Add CreateAppMimeDBEntries rule and call it from Link for targets that
  might be applications that need to be registered with the MIME DB. For
  the target the rule is invoked with it creates a directory into which
  the entries for the types to be registered are written. The directory
  is associated with the target via the HAIKU_MIME_DB_ENTRIES variable.
* AddFilesToContainer: If a target is added that has MIME DB entries,
  also add those to the container.
* build_haiku_package: Call mimeset for the package contents.
2013-05-09 03:38:10 +02:00
Ingo Weinhold f666576f62 CopyDirectoryToContainer: fix typo in comment 2013-05-09 03:30:19 +02:00
Ingo Weinhold fa4511f61b AddDriversToContainer: Handle duplicate invocations
Since the same driver can be added in more than one category, in a few
cases AddDriversToContainer was invoked twice for the same target. Avoid
adding the driver twice to add-ons/kernel/drivers/bin in such a case.
Didn't really cause any problem, but no need to copy the file twice.
2013-05-09 03:29:53 +02:00
Ingo Weinhold e387e24faa Move MIME DB creation from build_haiku_image to jam build system
* build_haiku_image: Remove MIME DB creation code.
* Rename beos_mime source directory to mime_db.
* Add rules to build the MIME DB in the source directory's jamfile.
* Add MIME DB directory to haiku.hpkg in data/mime_db.
2013-05-07 04:43:50 +02:00
Ingo Weinhold d6a6e2c811 rule CopyDirectoryToContainer: Add flags isTarget
The flags indicates that the passed sourceDirectory is a target, not a
path.
2013-05-07 04:43:50 +02:00
Ingo Weinhold fa5dff5529 Replace various boolean rule parameters by flags
Instead of the boolean alwaysUpdate, isCDPackage, and stripDebugSymbols
parameters use a uniform flags parameter which can contain any of the
respectively supported flags (alwaysUpdate, cdPackage,
stripDebugSymbols, !stripDebugSymbols).
2013-05-07 04:43:50 +02:00
Ingo Weinhold eef74ff298 Remove packages Zlib[-devel] from ReleaseBuildProfiles
Instead add Zlib as a mandatory package and Zlib-devel as a Development
dependency.
2013-05-07 04:43:49 +02:00
Ingo Weinhold 7c6bff1734 Complete outsourcing of zlib
* Add optional packages Zlib and Zlib-devel.
* Simplify the build feature section for zlib and also extract the
  source package.
* Replace all remaining references to the zlib instance in the tree and
  remove it.
2013-05-06 04:37:18 +02:00
Ingo Weinhold 4bee3d6fb9 Add more rules to simplify dealing with build features
* Introduce the notion of build feature attributes and add rules
  SetBuildFeatureAttribute and BuildFeatureAttribute to set respectively
  get a build feature attribute.
* Add rule ExtractBuildFeatureArchives to download and extract archives
  and set build feature attributes to extracted entries.
* Add rule UseBuildFeatureHeaders as a shorthand for getting a build
  feature attribute and adding it as a system header search directory.
2013-05-06 04:31:27 +02:00
Ingo Weinhold b923a5072e Fix merge defect in ICU optional package declaration 2013-05-05 22:11:55 +02:00
Ingo Weinhold 6fa5d4a7c6 Add liblocale symlink until packages have been rebuilt 2013-05-05 18:46:25 +02:00
Ingo Weinhold bc07db8f0a Declare more package dependencies
Probably still a lot missing, but we want to get rid of the file soon,
anyway.
2013-05-05 18:31:02 +02:00
Ingo Weinhold b38b279649 Move package definitions to their own files 2013-05-05 18:25:31 +02:00
Ingo Weinhold 2bf492b64b Add optional package Man to alpha, nightly release profiles 2013-05-05 15:05:06 +02:00
Ingo Weinhold d0e6e17436 rule KernelStaticLibrary: Fix comment 2013-05-05 15:04:08 +02:00
Ingo Weinhold 25a7b01d15 Merge branch 'master' into package-management
Additional changes:
* Add src/system/kernel/lib/zlib, which builds a kernel version of zlib,
  needed by packagefs.
* BuildFeatures: Add a build feature "gcc2" to allow for easier checks.
* Referenceable.cpp: Include <OS.h> instead of <debugger.h>. The latter
  is not needed and prevents building for the build platform.
* zlib/zutil.h: Fix gcc 2 build. We really should use the external
  package instead.

Conflicts:
	.gitignore
	build/jam/BuildSetup
	build/jam/FileRules
	build/jam/FloppyBootImage
	build/jam/HaikuImage
	build/jam/ImageRules
	build/jam/KernelRules
	build/jam/NetBootArchive
	build/jam/OptionalBuildFeatures
	build/jam/OptionalLibPackages
	build/jam/OptionalPackageDependencies
	build/jam/OptionalPackages
	build/scripts/build_haiku_image
	configure
	data/bin/installoptionalpackage
	data/system/boot/Bootscript
	headers/os/app/Message.h
	headers/os/package/PackageInfo.h
	headers/os/package/PackageInfoAttributes.h
	headers/os/package/PackageInfoSet.h
	headers/os/package/PackageRoster.h
	headers/os/package/PackageVersion.h
	headers/os/package/hpkg/PackageInfoAttributeValue.h
	headers/os/storage/FindDirectory.h
	headers/os/storage/Node.h
	headers/os/support/StringList.h
	headers/private/system/directories.h
	src/add-ons/kernel/drivers/audio/ac97/es1370/Jamfile
	src/add-ons/kernel/file_systems/packagefs/AttributeIndex.cpp
	src/add-ons/kernel/file_systems/packagefs/Jamfile
	src/add-ons/kernel/file_systems/packagefs/Package.cpp
	src/add-ons/kernel/file_systems/packagefs/Package.h
	src/add-ons/kernel/file_systems/packagefs/PackageDomain.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageDomain.h
	src/add-ons/kernel/file_systems/packagefs/PackageFSRoot.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.h
	src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.h
	src/add-ons/kernel/file_systems/packagefs/PackageLinksDirectory.cpp
	src/add-ons/kernel/file_systems/packagefs/PackageNode.h
	src/add-ons/kernel/file_systems/packagefs/ResolvableFamily.cpp
	src/add-ons/kernel/file_systems/packagefs/Version.cpp
	src/add-ons/kernel/file_systems/packagefs/Version.h
	src/add-ons/kernel/file_systems/packagefs/Volume.cpp
	src/add-ons/kernel/file_systems/packagefs/Volume.h
	src/add-ons/kernel/file_systems/packagefs/kernel_interface.cpp
	src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c
	src/apps/deskbar/BarApp.cpp
	src/apps/deskbar/BarMenuBar.cpp
	src/apps/deskbar/BarMenuBar.h
	src/apps/deskbar/BarView.cpp
	src/apps/deskbar/BarView.h
	src/apps/deskbar/BarWindow.cpp
	src/apps/deskbar/BarWindow.h
	src/apps/deskbar/DeskbarMenu.cpp
	src/apps/deskbar/DeskbarMenu.h
	src/apps/deskbar/DeskbarUtils.cpp
	src/apps/deskbar/DeskbarUtils.h
	src/apps/deskbar/ExpandoMenuBar.cpp
	src/apps/deskbar/ExpandoMenuBar.h
	src/apps/deskbar/TeamMenu.cpp
	src/apps/processcontroller/ProcessController.cpp
	src/apps/remotedesktop/RemoteDesktop.cpp
	src/bin/bash/config-top.h
	src/bin/finddir.c
	src/bin/package/Jamfile
	src/bin/package/command_add.cpp
	src/bin/package/command_create.cpp
	src/bin/package/command_list.cpp
	src/bin/package_repo/command_list.cpp
	src/bin/pkgman/command_refresh.cpp
	src/build/libbe/support/Jamfile
	src/build/libpackage/Jamfile
	src/build/libroot/Jamfile
	src/build/libroot/fs.cpp
	src/build/libroot/remapped_functions.h
	src/kits/locale/MutableLocaleRoster.cpp
	src/kits/opengl/GLRendererRoster.cpp
	src/kits/package/PackageInfo.cpp
	src/kits/package/PackageInfoSet.cpp
	src/kits/package/PackageRoster.cpp
	src/kits/package/PackageVersion.cpp
	src/kits/package/RepositoryCache.cpp
	src/kits/package/hpkg/PackageWriterImpl.cpp
	src/kits/package/hpkg/ReaderImplBase.cpp
	src/kits/package/hpkg/WriterImplBase.cpp
	src/kits/print/PrintTransport.cpp
	src/kits/print/Printer.cpp
	src/kits/screensaver/ScreenSaverRunner.cpp
	src/kits/support/StringList.cpp
	src/kits/tracker/ContainerWindow.cpp
	src/kits/tracker/DeskWindow.cpp
	src/kits/tracker/PoseView.cpp
	src/libs/print/libprint/Transport.cpp
	src/preferences/printers/AddPrinterDialog.cpp
	src/preferences/screensaver/ScreenSaverWindow.cpp
	src/servers/debug/DebugServer.cpp
	src/servers/input/AddOnManager.cpp
	src/servers/media_addon/MediaAddonServer.cpp
	src/system/boot/Jamfile
	src/system/boot/loader/Jamfile
	src/system/boot/loader/loader.cpp
	src/system/boot/loader/vfs.cpp
	src/system/kernel/fs/vfs.cpp
	src/system/kernel/fs/vfs_boot.cpp
	src/system/libroot/os/find_directory.cpp
	src/system/runtime_loader/runtime_loader.cpp
	src/tools/package/Jamfile
2013-05-05 15:03:26 +02:00
Ingo Weinhold 0d6e950639 Update mercurial and python packages 2013-05-04 01:02:44 +02:00
Ingo Weinhold 6b1789577a Update/add packages for readline, cvs, doxygen, python,
... and timgmsoundfont.
2013-05-03 15:47:11 +02:00
Ingo Weinhold a82e49aeb0 Update cdrtools and keymapswitcher packages 2013-05-02 17:18:12 +02:00
Ingo Weinhold 98a0dd5fd8 Update ICU packages
We extract both packages to the same directory now, since the icu_devel
package depends on the base package and contains relative symlinks to
the libraries. ATM that isn't really relevant, since we link directly
against the libraries from the base package, but we might want to
change that eventually.
2013-05-01 02:02:56 +02:00
Ingo Weinhold 6c6d6490bf ExtractArchive rule: Allow the directory to have a grist 2013-05-01 02:01:44 +02:00
Ingo Weinhold 7cbdf4f023 Update packages for several ports
* apr
* apr_util
* curl
* expat
* libxml2
* ncurses
* neon
* pcre
* subversion

This corrects the use of develop/lib paths and a few other things.
2013-04-30 22:50:18 +02:00
Ingo Weinhold c476e9a368 Update openssh package 2013-04-30 00:40:09 +02:00
Ingo Weinhold e0f7f688f1 Extract packages' settings dir to common/settings in image
That's a somewhat crude initial approach to installing the default
settings of packages when building the image.
2013-04-29 19:38:29 +02:00
Ingo Weinhold ece8449668 Pimp up AddTargetVariableToScript to support a list of targets 2013-04-29 17:57:37 +02:00
Ingo Weinhold 4fd280ddfa Simplify use of InstallOptionalHaikuImagePackage
When invoked for a hpkg only the installation location (i.e. "common"
or "system") has to be specified now and "common" is the default. The
rule uses AddPackageFilesToHaikuImage now.
2013-04-29 17:28:18 +02:00
Ingo Weinhold 5d41bc9af9 Add AddPackageFilesToHaikuImage rule 2013-04-29 16:13:03 +02:00
Ingo Weinhold 58081381ea packagefs: Add a .settings package symlink
It points to the settings directory appropriate for global settings.
When a package is installed in ~/config, we cannot use the settings/
subdirectory for global settings, since then the files could clash with
equally named user specific settings files (e.g. in case of
ssh/known_hosts). So we use ~/config/settings/global for global
settings instead.
2013-04-29 15:38:34 +02:00
Ingo Weinhold e17463fed2 Update gettext package 2013-04-29 11:44:34 +02:00
Ingo Weinhold 0302ce8180 Update bzip2 package 2013-04-29 01:43:01 +02:00
Ingo Weinhold bd3c533887 Update openssh package 2013-04-29 01:03:50 +02:00
Oliver Tappe d287414628 Update BeBook package and fix URL of BePDF package. 2013-04-28 23:50:46 +02:00
Oliver Tappe 3cd00599c8 Update packages for CARootCertificates, curl, BePDF 2013-04-28 19:58:29 +02:00
Ingo Weinhold 49da4a2d47 Update cmake and libsolv packages 2013-04-28 19:21:46 +02:00
Alexander von Gluck IV 292b0d784c Mesa: Reorganize the Mesa BuildFeature
* Only specify some library deps on gcc4
  as they are unused on gcc2
2013-04-28 16:35:38 +00:00
Alexander von Gluck IV c87173f9b2 Mesa: Update Mesa 7.8.2 package
* Fixes #9685 gcc2 debug issue
2013-04-28 15:25:41 +00:00
Alexander von Gluck IV 107ab75ea6 docs: Clean up RaspberryPi Documentation; move
* Convert the RaspberryPi documentation to markdown
* Move into the proper arm port docs location
2013-04-28 12:37:36 -05:00
Oliver Tappe 4521d4c6c7 Updated package for Pe (lpe symlink was borked). 2013-04-28 14:11:17 +02:00
Oliver Tappe 8aa0b0d792 Update packages apr, apr_util, curl, flex, jam, libpcre and Pe. 2013-04-28 02:40:43 +02:00
Ingo Weinhold c704b139ee Update packages libtool, texinfo, sed, tar 2013-04-28 02:25:01 +02:00
Ingo Weinhold 31bc74d4bf Remove x86_cpuidle driver from image
Apparently it isn't ready yet. I haven't found a single syslog on Trac
that shows a successful initialization of the driver, and on my
machine, where it does that at least, the system freezes during boot.
2013-04-27 17:13:05 +02:00
Matt Madia db6fcc4952 Fixed typo in variable use. 2013-04-27 08:20:53 -04:00
Alexander von Gluck IV b4764ec2fe Mesa: Update Mesa 9.1.1 gcc4 build package
* New package uses mmap vs malloc for exec memory
* Solves #9685 on gcc4
2013-04-27 01:41:45 +00:00
Ingo Weinhold abfcf6aa3f Fix copy and paste error in NCurses optional package section 2013-04-27 03:13:37 +02:00
Ingo Weinhold 6ff8ef530d Add libedit package 2013-04-27 03:12:50 +02:00
Ingo Weinhold b87aa11726 Update ncurses package
It now includes both the wchar and the non-wchar libraries.
2013-04-27 02:57:17 +02:00
Ingo Weinhold d26ca29d75 Update mkdepend package 2013-04-27 00:19:18 +02:00
Ingo Weinhold 4e8a27c90f Update libxml2 package 2013-04-26 16:33:07 +02:00
Ingo Weinhold 4d6fe712e0 Update sqlite package (fix pkgconfig) 2013-04-26 01:40:34 +02:00
Ingo Weinhold 603c7647a0 Update openssl package 2013-04-26 01:39:55 +02:00
Ingo Weinhold 13321f4d4b Update sqlite package 2013-04-26 00:03:31 +02:00
Ingo Weinhold 8e452bcfc7 Update gcc, ncurses, and nano packages 2013-04-25 17:59:02 +02:00
Ingo Weinhold db88e4417b Add ncurses optional package 2013-04-25 03:39:09 +02:00
Alexander von Gluck IV b8bce71dcb Mesa: Update Mesa 7.8.2 package
* Utilize mmap vs malloc due to the new NX support
* GL applications no longer crash
* Fixes #9685 gcc2
2013-04-24 21:31:11 +00:00
Ingo Weinhold ad1d8a9d01 Remove ncurses from the haiku_devel package
Besides that this version is very old, eventually we want to outsource
ncurses anyway.
2013-04-24 22:41:48 +02:00
Jérôme Duval 6b40eddef7 build: switch from link option -nostart to -shared for addons and libs.
* they are interchangeable in GCC 2 and 4.6.
2013-04-24 20:40:48 +02:00
Ingo Weinhold 4b42e1a6be Update man optional package to hpkg 2013-04-24 16:05:39 +02:00
Ingo Weinhold e49c7394ef Update groff optional package to hpkg 2013-04-23 23:07:34 +02:00
Ingo Weinhold f3b11fcb9d Update p7zip package 2013-04-23 20:49:06 +02:00
Ingo Weinhold 0d452c8f34 Remove the TrackerNewTemplates optional package
Instead add the files to the tree and generate the resulting files on
the fly. This also avoids the undesired attributes the files in the
package had.
2013-04-23 19:53:25 +02:00
Ingo Weinhold 89804230e1 Override File actions to be whitespace-safe 2013-04-23 19:49:21 +02:00
Ingo Weinhold 15565a06d4 Repackaged WonderBrush zip as HPKG 2013-04-22 23:57:28 +02:00
Ingo Weinhold 60ac56d3fa Update wpa_supplicant package 2013-04-22 22:52:03 +02:00
Ingo Weinhold d6a80eb122 Add private headers to haiku_devel package
Also include the freebsd_network and freebsd_wlan headers. Their final
location and which of them to include in the first place might need some
adjustments.
2013-04-22 21:58:51 +02:00
Ingo Weinhold dbcaf9ee61 Update WQY-MicroHei package 2013-04-22 20:35:41 +02:00
Ingo Weinhold ef40a60ae8 Update Vision package 2013-04-22 19:10:06 +02:00
Ingo Weinhold 5be84d5f00 Update yasm package 2013-04-22 13:50:44 +02:00
Oliver Tappe 083234daa2 Drop legacy scripts 'cc' and 'c++'
* no longer put compiler wrappers onto image
* removed corresponding environment variables
2013-04-22 01:00:36 +02:00
Oliver Tappe 86b3c7a416 Drop symlink common/develop/tools/current
* drop the symlink itself (system development tools are now symlinked
  from /boot/common/bin directly)
* remove that symlink from PATH
2013-04-22 00:56:02 +02:00
Oliver Tappe 4b303759d2 Update prerequired packages with current versions. 2013-04-22 00:50:01 +02:00
Ingo Weinhold 7c092d4d86 Add build profile action update-packages
Equivalent to "jam <list of all hpkgs> && jam @... <list of all hpkgs>",
i.e. it makes sure all hpkgs that are supposed to be in the image are
rebuilt respectively downloaded and copied to the image. It doesn't
remove old packages nor the activation files -- that still has to be
done manually.
2013-04-21 01:44:21 +02:00
François Revol eecde8e37c Merge branch 'master' into sam460ex 2013-04-21 01:34:20 +02:00
Oliver Tappe bab6caf3e0 Another lap of updating base packages:
* binutils has now been split off gcc
* adjusted other packages to new naming scheme
2013-04-20 15:32:19 +02:00
Ingo Weinhold f16dbba442 Update libsolv package 2013-04-19 01:34:26 +02:00
Ingo Weinhold 7b2d062147 Enforce current package rules for packages built from tree
* Replace '-' in package name by '_'.
* Use new '[...]' notation for pre-release version component.
2013-04-18 14:44:44 +02:00
Ingo Weinhold caba55ee61 Revert to previous libsolv package
In the latest one the version comparison is broken.
2013-04-16 20:34:52 +02:00
Ingo Weinhold 8d85f8e41e Update libsolv package
The Haiku repository support has been upstreamed and the maintainer,
Michael Schroeder, has fixed and improved a few things.
2013-04-16 17:08:45 +02:00
Ingo Weinhold 88f22c9768 InstallOptionalHaikuImagePackage: Remove first parameter
Instead deduce the file name from the URL. A long overdue change. Avoids
unnecessary name duplication, which only led to errors.
2013-04-16 14:39:31 +02:00
Ingo Weinhold 6185f6e7cc Fix libtool file name 2013-04-16 13:45:33 +02:00
Oliver Tappe e7563b87c7 Updated several base packages 2013-04-16 11:18:44 +02:00
Ingo Weinhold 202c1daaed BPackageVersion: Rename property release to revision
* ... to avoid confusion with the preRelease property. It's also called
  "revision" in the HaikuPorts recipes.
* Update libsolv package. Was necessary due to the BPackageVersion
  change, but also includes a few more changes.
2013-04-16 00:05:19 +02:00
Ingo Weinhold 19a268a459 Update libiconv and sqlite packages
The new package files haven't been rebuilt, just repackaged. Only small
details in the package-info changed.
2013-04-09 20:07:46 +02:00
Jerome Duval 748c10f222 Added a configure option to activate Graphite compilations flags
* check if GCC actually supports Graphite flags when the option
  --use-gcc-graphite is used
2013-04-06 13:58:46 +02:00
Ingo Weinhold 26296b0aa4 Add the humble beginnings of the package daemon
It doesn't really do anything yet save for tracking what packagefs
volumes are mounted and unmounted.
2013-04-06 04:29:34 +02:00
Ingo Weinhold 1add554a83 Make LibSolv a mandatory package
... so it is actually installed on the image.
2013-04-03 21:04:55 +02:00
Ingo Weinhold 1a4d020daf Flesh out the package kit solver API quite a bit more
* Reorganize things a bit:
  - BSolver is now an abstract base class.
  - A libsolv based implementation, LibsolvSolver, lives in a new
    add-on, which is loaded lazily.
  - Get rid of libpackage_solver. Save for LibsolvSolver everything
    is moved to libpackage.
  - This is a nicer solution for the cyclic dependency caused by
    libsolv (libsolvext to be precise) using the package kit for
    reading repositories and package files.
* Add a solver result data structure and and an accessor the solver.
* Add problem reporting support to the solver. There aren't data
  structures for the problem solutions yet and support for selecting
  solutions and re-solving is missing as well.
2013-04-03 02:15:57 +00:00
Ingo Weinhold dd6ec1de82 Add libsolv build feature 2013-04-02 17:31:06 +00:00
Ingo Weinhold bcdf492404 Simplify/fix the ExtractArchive rule and friends
* The call to the dummy actions isn't needed
* The calls to Extract{Zip,Tar,HPKG}Archive1 couldn't work like that.
  The directory has to be the main target, since ExtractArchive is
  potentially invoked multiple times with different extracted file
  targets and the Extract*Archive1 is only invoked the first time.
  Tested only with the HPKG actions, but they others should work as
  well.
2013-04-02 17:17:46 +00:00
François Revol 048f079571 Merge branch 'master' into sam460ex 2013-04-02 03:29:47 +02:00
Michael Lotz 93c2c2aa6b Update wpa_supplicant to version 2.0 and bring in improvements.
* Updated to version 2.0 of vendor code.
* Reliability improvements in controlling the underlying devices.
* Implement leaving networks.
* Better timeout handling.
* Usability enhancements like cancel on escape, ok button being the
  default and the password field having focus on start.
* Storing of the password using BKeyStore.
2013-03-31 03:01:08 +02:00
Ingo Weinhold 3f986502fd Rebuilt packages for subversion and its dependencies 2013-03-29 02:09:20 +00:00
Ingo Weinhold dd60d4eef6 OptionalPackages: Fix CVS URL
Due to a copy'n'paste error the curl package was used. While at it,
use the rebuilt package.
2013-03-28 12:16:41 +00:00
François Revol d4eea7d43c Merge branch 'master' into sam460ex 2013-03-28 09:47:50 +01:00
Ingo Weinhold 90692f47f7 Rebuilt packages required for bootstrapping 2013-03-28 00:20:23 +00:00
Ingo Weinhold 4e87ae1bbe Repackaged xz-utils package
It is now declared with architecture x86_gcc2, though it probably
has been built with gcc4. That issue has to be solved for real
eventually, since the package resolver won't allow mixing of gcc2
and gcc4 packages.
2013-03-27 21:17:41 +00:00
Rene Gollent a198eedcc7 Fix incorrect version checks.
It's sufficient to simply check if the gcc version is 4 or higher since
we enforce the use of the latest ported compiler for the build anyways,
and these multi-level checks would fail in their current state if gcc
moved to e.g. version 5.0.
2013-03-25 21:14:17 -04:00
Fredrik Holmqvist a54db680ba Revert "Remove fno-tree-vrp compile flag."
This reverts commit e8d6e3fe3b.
Also added a comment pointing to the recent discussion.
See http://www.freelists.org/post/haiku-development/hrev45320-Yet-another-nonobvious-effect-of-ftreevrp-optimization
2013-03-25 22:29:15 +01:00
Rene Gollent 9595506fb8 Fix typo. 2013-03-24 21:33:57 -04:00
Rene Gollent 5787587d53 Disable array bounds warnings on gcc 4.6. Fixes #9522. 2013-03-24 11:27:49 -04:00
Alexander von Gluck IV 5d8d472d1a GL: Upgrade to Mesa 9.1.1
* Somefix-ups and repairs for
  changes to how Mesa works internally
* _Flush and _Error need additional
  work as DriverCtx was removed
* Tested working
2013-03-20 01:38:43 -05:00
Humdinger 21406bd896 Added optional package System-sounds.
Added the optional package for system sounds that
were collected for GCI 2012. Also added the demo
packges to the "contents" at the top of OptionalPackages.
2013-03-12 18:47:08 +01:00
François Revol 8b72ce2651 Merge branch 'master' into sam460ex 2013-03-12 03:24:15 +01:00
Pawel Dziepak 89878bd670 Restore up-to-date HaikuImage
While merging nfs4 branch accidentally outdated version of HaikuImage was used
to resolve conflicts. This commit corrects that mistake.
2013-03-11 15:18:02 +01:00
Pawel Dziepak 3d8415d7da nfs4: Add nfs4 to 64 bit image 2013-03-11 13:01:10 +01:00