Commit Graph

76 Commits

Author SHA1 Message Date
Alexander von Gluck IV
7600fdd8e2 ide: Remove old IDE bus + stack.
* Hasn't been used for quite some time
* Everything was ported over to a new ATA stack
  some time ago.
* No huge regressions were seen from the new ATA
  stack.
2017-06-28 08:13:37 -05:00
dsizzle
9b6b158b88 Implementation of BFont::Blocks
BFont::Blocks is now implemented in ServerFont, via a call through the
app_server.  It uses fontconfig to iterate through a charset of a font
and stores the defined blocks in a bitmap.

A new API was added, BFont::IncludesBlock, that will allow for arbitrary
testing of a given Unicode block. Since nothing is cached, searching
through an entire charset for a series of Unicode blocks can be quite
slow. In a given block there may be only 1 or 2 characters actually
defined so every character within a block needs to be checked until one
is found, which in a degenerate case will mean the entire block is
checked.

Signed-off-by: Axel Dörfler <axeld@pinc-software.de>
2017-05-08 22:17:53 +02:00
Jérôme Duval
ec39b68443 Mass update for x86.
* Boost and Qt5 left out for now.
2017-04-28 17:48:35 +02:00
Jérôme Duval
95a7451112 Adjust liwebp soname for x86_64. 2017-04-08 13:45:10 +02:00
Adrien Destugues
2c953daef7 Fix build also for secondary arch
Use a variable not affected by MultiArchBuildSetup, so we use the new
libwebp when gcc2 is the main arch, even when building for secondary.
2017-04-08 13:29:49 +02:00
Adrien Destugues
ac0cb4e046 Fix build after libwebp update.
The update is only for gcc2 for now. This needs to be adjusted once the
other archs make the switch too.
2017-04-08 12:09:13 +02:00
Jessica Hamilton
f4ff9cb02c Merge branch 'uefi-support' 2016-11-14 03:21:59 +13:00
Jérôme Duval
7e9b90f7e4 Midi: use fluidlite as fluidsynth replacement.
* SF3 support.
2016-11-01 08:50:03 +01:00
Fredrik Holmqvist
211483cb51 EFI: Initial test EFI application
* Only set HAIKU_BOOT_PLATFORM to bios_ia32 if not defined
* Add gnuefi build feature
* Introduce BOOT_LDFLAGS, and move options for passing to linker
  into ArchitectureSetup
* x86_64 compile fixes for warnings in boot loader
* loader/elf.cpp: don't include ELF32 support when targeting EFI
* relocation_func.cpp: copy of the relocation code from gnuefi
  to make _relocate extern "C", and avoid including <efilib.h>
* boot_loader_efi.ld: copy of gnuefi's elf_x86_64_efi.lds,
  modified to include support for C++ constructors, etc. Keep in
  sync with the gnuefi package

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2016-09-02 19:02:29 +12:00
Dario Casalinuovo
5029fabd08 live555: Library order caused missing symbols 2016-06-02 19:06:06 +02:00
Dario Casalinuovo
ec8626dea0 Add live555 BuildFeature 2016-05-24 23:20:57 +02:00
Jérôme Duval
dd1c718026 Update libwebp packages.
* added libwebp5 packages for compatibility.
* updated library soname of the build feature.
2016-01-10 19:28:02 +01:00
Jessica Hamilton
1941c9054e ffmpeg addon: add missing dependency on libswresample. 2015-11-21 07:42:44 +13:00
Jérôme Duval
d43720add9 Switch to tiff4 as system dependency. 2015-10-18 10:00:02 +02:00
Jérôme Duval
5b3c88f1da Switch to ncurses 6 as system dependency.
* remove traces from libpng (as opposed to libpng16).
2015-10-18 00:44:30 +02:00
Alexander von Gluck IV
7e24b659c4 build: Convert to external libedit build package
* Drop lib/edit and matching bsd header
* Convert Debugger to libedit build package
* Should solve problems with libedit consumers
  not defining _BSD_SOURCE
* Progress on #10267
2015-07-04 15:29:05 -05:00
Jérôme Duval
e22a18e9f3 Add a feature for expat.
* Icon-O-Matic and Cortex are dependent on the feature.
* remove expat lib from the build and from the tree.
* expat package is added to regular builds.
2015-06-10 23:31:55 +02:00
Adrien Destugues
6eb464d8e5 ncurses: remove non-existing headers directory
The build feature depended on a non-existing directory, causing all
dependencies to always be considered out of date by Jam.

Fixes #11664.
2015-01-27 11:07:50 +01:00
Adrien Destugues
9a539f9e80 Outsource ncurses. 2014-12-18 10:18:39 +01:00
Jérôme Duval
242c022af8 Build against libpng16 instead of libpng.
* Also migrate freetype at the same time, otherwise freetype_devel
wouldn't install anymore.
2014-11-12 22:59:26 +01:00
Jessica Hamilton
8e145c66d7 qrencode addon: use KDL-specific qrencode library
Fixes #11351
2014-10-19 22:41:31 +00:00
PulkoMandy
90520f9b43 Second attempt at fixing non-bootstrap ARM build
- Revert the change to BuildFeature since the latest version of the zlib
sources package indeed uses the correct "sources" directory.
- Make the fake zlib package for ARM use the same revision number as the
current zlib version (4) so it can use the current version of the source
package instead of some older one.
2014-09-02 09:16:54 +02:00
PulkoMandy
2ba0ffcef0 Fix zlib source directory name.
This fixes the non-bootstrap ARM build.
I'm not sure this is the right fix, the zlib package seems to come with a
"source" (not "sources") folder on both ARM and x86_gcc2 but then I
don't understand how this worked for the x86_gcc2 build before.
2014-09-01 23:00:31 +02:00
Jérôme Duval
d977c0da56 BuildFeatures: add a feature for libicns 2014-08-26 20:26:31 +02:00
Jérôme Duval
cbe75ce5b7 BuildFeatures: add Giflib, Libwebp, Jasper features. 2014-08-25 20:24:04 +02:00
Oliver Tappe
5bddecbc3b Add build features gcc_syslibs and gcc_syslibs_devel.
* gcc_syslibs contains the shared libraries that are being built
  as part of gcc, i.e. libgcc_s.so, libsupc++.so and libstdc++.so
* gcc_syslibs_devel contains the static versions of the respective
  libraries plus additionally kernel versions of libgcc.a and
  libsupc++.a (which do not provide support for pthreads or TLS
  and thus do not have any external dependencies). Additionally,
  this build feature contains the c++ and gcc headers from the
  non-legacy compiler.
2014-07-31 10:59:07 +02:00
Jérôme Duval
9cd7c6a433 tiff: use the outsourced packages.
* packages for secondary architectures would be welcomed.
2014-06-02 23:45:19 +02:00
Jérôme Duval
c73c8e2367 gutenprint: add gutenprint as a mandatory package.
* use the shared library libgutenprint.so
* remove the xml data files from the tree and the Haiku package.
2014-05-10 13:08:35 +02:00
Jérôme Duval
0584f69356 gutenprint: use outsourced package.
* data files are still in the source tree.
* gutenprint headers contain a image.h header file which collides
with ours. This is solved by forcing include search first on
os/kernel directory.
2014-05-09 20:19:35 +02:00
Oliver Tappe
8c54af563c Whitespace cleanup in root and 'build' folder.
* Removed trailing whitespace and empty lines at top of files.
2014-05-01 12:55:41 +02:00
Jérôme Duval
607a620b1c qrencode: use outsourced package
* qrspec.h isn't yet part of the package for some reason.
* removed qrencode from the bootstrap package.
* only include qrencode when the qrencode package is found.
* didn't check qrencode itself, tests welcome.
2014-04-18 18:10:57 +02:00
Alexander von Gluck IV
eb45d168e1 GL: Remove OpenGL kit, x86 Mesa
* Depend on Mesa packages to provide functionality
2013-12-22 23:36:02 -06:00
Jerome Duval
9e46d51cc2 ffmpeg plugin only needs to link against ffmpeg libs.
* clean the ffmpeg build feature.
2013-12-05 18:04:13 +01:00
Adrien Destugues
cb7df3b1da Update webkit and cmake packages
* Some changes required in WebPositive to store the cookies on disk
2013-11-15 18:39:07 +01:00
Oliver Tappe
ec5bf7bdf8 Adjust paths in source packages to what haikuporter produces. 2013-10-01 01:00:02 +02:00
Rene Gollent
9549402d30 Add libcurl build feature. 2013-09-29 17:25:29 -04:00
Ingo Weinhold
1c9bc20646 BuildFeatures: re-add webkit build feature 2013-08-10 15:05:51 +02:00
Ingo Weinhold
dd0bd440d5 BuildFeatures: print the packaging arch in error messages 2013-08-10 15:02:02 +02:00
Ingo Weinhold
93cfb72270 build features/bootstrap repo: support secondary arch
* Add rule FSplitPackageName. It splits a package name into port name
  and package suffix.
* FSetConditionsHold: Rename to FConditionsHold and replace the set
  parameter by a predicate rule parameter, thus adding more flexibility.
* FIsBuildFeatureEnabled: Use the faster check.
* Add rule FQualifiedBuildFeatureName. Given a build feature name, it
  prepends the current packaging architecture to yield a qualified
  feature name. Is used by the other build feature rules so that the
  same build feature can be configured differently for each arch.
* ExtractBuildFeatureArchives: The supplied list is now filtered via
  FFilterByBuildFeatures, allowing for build feature conditions in the
  list.
* Add rule InitArchitectureBuildFeatures. It is called early for each
  configured architecture, setting up some basic build features for it.
  "primary" is set for the primary architecture and a "secondary_<arch>"
  is set for each secondary architecture.
* BuildFeatures: Add secondary architecture support: Use the correct
  paths for libraries and headers (subdir for secondary architecture)
  and configure the icu and zlib sources only for the primary
  architecture.
* BootstrapPackageRepository: The package lists are now filtered via
  FFilterByBuildFeatures, allowing for build feature conditions in the
  lists.
* IsPackageAvailable, FetchPackage: Add secondary architecture support.
* HaikuPortsCross/x86_gcc2: Add icu and zlib x86 secondary packages.

The second stage Haiku cross devel package for the secondary
architecture can now be built.
2013-08-05 07:09:45 +02:00
Ingo Weinhold
b0944c78b0 More work towards hybrid support
* All packaging architecture dependent variables do now have a
  respective suffix and are set up for each configured packaging
  architecture, save for the kernel and boot loader variables, which
  are still only set up for the primary architecture.
  For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++,
  and TARGET_LIBSTDC++ are set to the respective values for the primary
  packaging architecture by default.
* Introduce a set of MultiArch* rules to help with building targets for
  multiple packaging architectures. Generally the respective targets are
  (additionally) gristed with the packaging architecture. For libraries
  the additional grist is usually omitted for the primary architecture
  (e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that
  Jamfiles for targets built only for the primary architecture don't
  need to be changed.
* Add multi-arch build support for all targets needed for the stage 1
  cross devel package as well as for libbe (untested).
2013-08-01 08:54:06 +02:00
Ingo Weinhold
d1fe5b98d9 BuildFeature: get rid of hard-coded package versions
... using the new placeholder feature of ExtractBuildFeatureArchives.
2013-07-21 03:13:58 +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
94307089f9 Update packages ffmpeg, openssh, p7zip 2013-06-30 11:49:40 +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
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