Commit Graph

4328 Commits

Author SHA1 Message Date
waddlesplash
2d9270e859 determine_haiku_revision: Properly get rid of the commit hash.
Change-Id: I3f57b1cd4d819e7f531001d747bf7b103954a918
Reviewed-on: https://review.haiku-os.org/581
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2018-09-18 19:50:52 +00:00
Augustin Cavalier
563a1a0da1 determine_haiku_revision: Rework "no tag on HEAD" output.
When HEAD is tagged, the output will be identical to what it was
before (the latest hrev tag and nothing else.) When HEAD is not tagged,
and the most recent tag is further back, we now use a format like this:

hrevXXXXX+N(+dirty)

... where N is the number of commits since hrevXXXXX, and +dirty is added
if the working tree is dirty. This is significantly shorter than the
previous model (as it does not have the Git revision.)

Fixes #14445.

Change-Id: Ide7f66cf0ac1c1f05402afc52b6be3b68b66d6dc
Reviewed-on: https://review.haiku-os.org/566
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2018-09-16 00:09:14 +00:00
Augustin Cavalier
503d889314 Remove the "Haiku" screensaver from the tree.
As discussed in #14447.
2018-09-10 19:51:02 -04:00
Augustin Cavalier
23446707de ArchitectureRules: Pass -shared to the universally to the linker when using Clang. 2018-09-08 18:56:33 -04:00
waddlesplash
d28caaed68 build_cross_tools: Also touch .in files to prevent their regeneration.
Change-Id: Id893460327fd6db064c6fc0fb4de8e6ada1b1773
Reviewed-on: https://review.haiku-os.org/496
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2018-08-28 21:27:50 +00:00
Augustin Cavalier
372195500d Versioning: Add BETA_1 and PRE_BETA_2 version constants.
* PRE_BETA_2 is now the default in master.
 * For libbe: R1/alpha4 used internal=8, but nobody bumped master
   at the same time, so now we are on internal=9.
2018-08-28 00:21:13 -04:00
waddlesplash
d34addaf3f build_cross_tools: Compile GCC2 as 32-bit everywhere.
It is just straight up broken on most systems without this, as
the same "cast specifies signature type" appears there too.

Exactly why this fixes the problem does not appear to be any more known
than it was when this was first instated in 2012.
2018-08-27 22:25:18 -04:00
waddlesplash
2cf7d49495 build_cross_tools: Touch configure scripts so the Makefiles don't regenerate them. 2018-08-27 19:06:22 -04:00
Augustin Cavalier
0804aecea1 HaikuPorts: Add lcms, needed by openjp2. 2018-08-27 00:45:29 -04:00
waddlesplash
75f7932ae2 build_cross_tools_gcc4: Forcibly disable maintainer mode.
This should stop GCC from trying to reconfigure.
2018-08-26 22:24:45 -04:00
Augustin Cavalier
b58a151493 build: Link against libgcc_s.so.1 instead of libgcc_s.so.
The latter is not just a symlink to the former, but is a small pseudo-
library that tells the linker to use the .so.1 version instead. As we
do not pass -L to this directory to the linker invocation, the linker
thus cannot find it, and so errors out.

We rightly do not want the linker doing "magic" things for us that
we don't expect, and so even if this one case is fine, we shouldn't
allow the linker to take care of this automatically for us when
it comes to libroot and other core system functionality, especially
as going forward we may indeed add a second libgcc version due to ABI
breaks. Instead, link against .so.1 directly.

Fixes the build breakage caused by the GCC 7 bump.
2018-08-26 13:35:40 -04:00
Augustin Cavalier
5fd406b4c8 HaikuPorts: Add OpenJPEG to the build packages set.
We now build libicns against it. It seems that it is better-maintained than
JasPer, so we should probably consider switching the JPEG2000Translator to
use it also.
2018-08-26 12:44:29 -04:00
Augustin Cavalier
7d5faaf44f OptionalPackages: Remove some of the less-useful devel packages.
ffmpeg_devel pulls in some other devel packages we don't really need,
and very few things are built against it anyway, so whoever needs it
can install it manually. Same goes for freetype and fontconfig.
2018-08-26 12:33:36 -04:00
Augustin Cavalier
21909dacd2 HaikuPorts: Update build-packages set. 2018-08-26 01:29:35 -04:00
Augustin Cavalier
9b41d53230 HaikuSource: Add missing SEARCH. 2018-08-23 20:11:49 -04:00
Augustin Cavalier
a41d815c67 ramfs: Lots of fixes to the build.
* Store pointers in an addr_t instead of int32, for 64-bit's sake
 * Use DebugSupport.h instead of userlandfs Debug.h and remove extra parentheses
 * Create a header-only String class based on the userlandfs String and use it
 * RecursiveLock instead of Locker.
 * Jamfile cleanups and other misc. changes.

It isn't yet adapted to the new VFS API, so the build is still somewhat
broken.
2018-08-22 19:19:56 -04:00
Augustin Cavalier
e0d28cdccf reiserfs: Fix the build and enable on x86_64. 2018-08-22 19:19:54 -04:00
Augustin Cavalier
d37ae86568 LocaleRules: Add a second version of the catalog extraction actions.
Clang behaves slightly differently than GCC and allows us to steamroll
some errors we don't care about that GCC does not.
2018-08-21 20:52:41 -04:00
noreply@haiku-os.org
5174b9e8d1 Revert "Update translations from Pootle"
This reverts commit 6b7f260899.
2018-08-21 17:58:13 +00:00
Autocomitter
6b7f260899 Update translations from Pootle 2018-08-21 14:12:05 +00:00
Augustin Cavalier
c20e7a6862 build: Add a haiku_source package.
This contains the contents of Haiku's sources, which is necessary
to include in "with source" builds for proper (L)GPL compliance,
mostly because we have GPL code in the tree.
2018-08-20 21:00:25 -04:00
Augustin Cavalier
28ab14e35f MainBuildRules: Use $(CC) -E instead of "cpp" as the preprocessor.
"cpp" is the system C preprocessor, not the one from our cross-compiler,
and in the case of my system which does not have GCC installed at all,
it doesn't even exist.

With this, Clang-ARM builds successfully create a "haiku-arm.mmc".
I couldn't get it to output, even after blessing it with "rune",
but that may just be my fault...
2018-08-17 21:54:56 -04:00
Augustin Cavalier
bd43e4ae23 ArchitectureRules: Add -fPIC and fix warning flags for Clang. 2018-08-17 12:03:53 -04:00
Alexander von Gluck IV
816a311dd7 build/clang: Use elf_i386 under clang for 32-bit bootloader
Change-Id: If4606e62e94b9d4e393a667d35c09b9471b66653
2018-08-17 10:17:27 -05:00
Augustin Cavalier
8bc13c5528 BuildSetup: Default HOST_C++ and HOST_LINK to HOST_CC.
Now that HOST_CC is actually passed in, we need to default
everything to it; otherwise, it's up to the Jambase as to
what CC we are actually using.

Found by trying to build Haiku on a system that has no "cc"
executable, but Jam tried to use it anyway (as all three of CC,
C++, and LINK.)
2018-08-15 14:41:40 -04:00
Augustin Cavalier
252e4f6299 configure: Set a default LINKFLAGS in addition to LDFLAGS.
The former is passed to the compiler when linking using it,
the latter is passed to ld when it is invoked directly.

Also modify ArchitectureRules to not overwrite this setting.
2018-08-15 14:19:30 -04:00
Augustin Cavalier
937314e526 ArchitectureRules: Enable --no-undefined on GCC2.
Seems to work just fine.
2018-08-14 13:54:36 -04:00
Augustin Cavalier
4c13d20c24 LocaleRules: Pass the files to the preprocessor instead of piping it in.
This rule process the entire target's source files at once, and so
whoever wrote this rule in the first place (PulkoMandy?) probably
assumed without even testing that "cc -E" would create multiple
outputs for multiple inputs.

It doesn't, though: it just outputs them in sequence on the command line
the same way it does when the files are piped in through "cat". This
also has other advantages (e.g. preprocess errors caused by the compiler
assuming it was C not C++ code and so not defining __cplusplus, local
includes are now resolved properly, etc.)

Doing it this way does exposes other problems like the one fixed in the
previous commit (headers with no context defined, which worked previously
only because they used the context of the preceding `cat`'ed file.)

We now also remove the .pre file after collecting the catkeys.
2018-08-13 17:00:16 -04:00
Augustin Cavalier
20c61bb7a4 Revert unrelated changes from previous commit.
I should have read the update script more closely as to
how it added changes for committing...
2018-08-13 15:58:01 -04:00
Autocomitter
ef9994ee77 Update translations from Pootle 2018-08-13 19:45:39 +00:00
Augustin Cavalier
b8a38e2bc1 ArchitectureRules: Move Clang warning flags to appropriate location.
Also tweak the no-delete-null-pointer-checks comment so it's slightly
less offending of the 80-chars rule.
2018-08-11 15:36:04 -04:00
Augustin Cavalier
e823d3f06f BeOSRules: Pass CCFLAGS through to the compiler during ResComp.
Otherwise, Clang warns that we haven't set an architecture on ARM,
which is set in CCFLAGS. Since these might also contain other flags
that affect the preprocessor, there isn't any good reason to not
pass it through, so do that.
2018-08-11 15:33:08 -04:00
Augustin Cavalier
d0bfb2c044 ArchitectureRules: Append Clang flags before potential early-exit.
Gets the Clang-ARM build a bit further into libroot.
2018-08-11 15:26:54 -04:00
Augustin Cavalier
47a96c099e MainBuildRules: Fix CreateAsmStructOffsetsHeader on recent Clang.
It seems that at on some platforms at least, Clang uses @define instead
of #define, but with functionally identical syntax, so use sed to
process it as such.
2018-08-11 15:20:30 -04:00
Augustin Cavalier
cf10fee2c1 ArchitectureRules: Pass -march / -mcpu flags to the assembler also.
Fixes #14317.
2018-08-11 15:18:36 -04:00
Alexander von Gluck IV
459da273e4 build_packages: Now update arm and ppc after hardlinks (oops)
Change-Id: I2140dc50fb1cedcede317deb1a3473ec4db7871c
2018-08-08 10:27:49 -05:00
Alexander von Gluck IV
dc6b314309 build_packages: add efi for ppc and arm for fun
Change-Id: I81575e9f96d9682d17d5badd83808baaba4a7c69
2018-08-08 10:21:34 -05:00
Alexander von Gluck IV
3718fb861d efi: Drop x86_64 assumptions.
Change-Id: I3d806f43ef951013369fd0bf906eca5977e8d34c
2018-08-08 10:18:06 -05:00
Alexander von Gluck IV
a0f7292802 efi: no-red-zone and accumulate-outgoing-args only x86
Change-Id: Ic9d94298d21e55beb2829be8dbd09f4b3d5db99a
2018-08-08 10:10:37 -05:00
Alexander von Gluck IV
38fc668b2e arm64: Add architecture rules
Change-Id: Ia9cbe77e810b3ab1bde5677a16cc2fbd931de965
2018-08-03 09:55:49 -05:00
Augustin Cavalier
0689d8ddb8 BuildSetup: aarch64 -> arm64. 2018-08-02 20:04:19 -04:00
Augustin Cavalier
c44472c541 Enable use of Clang's integrated assembler. 2018-08-01 19:09:22 -04:00
Jérôme Duval
574dc1a374 Add x86_gcc2 secondary arch to x86_64 cross repository. 2018-08-01 20:42:29 +02:00
Alexander von Gluck IV
e667d7db02 arm: Tune default architecture target
We lost these tunings when I moved us away from board focused
builds. I feel like most of our ARM interest is around ARMv7+

Change-Id: Ie301d275a74d48ee3d0c4c7dc7d6cdd635288a7b
2018-08-01 09:03:43 -05:00
Alexander von Gluck IV
01535bc234 build: gcc/g++ to cc/c++
Just something to reduce confusion, these are non-gcc centric.

Change-Id: Iee29d6e5e51ea517408b5032ecbb6509cb9b721f
2018-07-31 20:27:21 -05:00
Augustin Cavalier
26ae216d0e realtekwifi: Import from FreeBSD 11.1.
Untested, but requested by Anarchos.
2018-07-31 19:50:46 -04:00
Augustin Cavalier
b5c220fb7d build: Use BeOSBuildCompatibility on Haiku also.
This forces usage of the libroot_build wrapper functions even on GCC2.
Probably fixes some strange ExtractHPKGArchive failures on Haiku.
2018-07-31 19:50:46 -04:00
Augustin Cavalier
1587c3c555 ArchitectureRules: Enable no-delete-null-pointer-checks on Clang.
This requires a trunk build of Clang (the flag was only implemented
& introduced 12 days ago), but at present, full builds will fail
due to an unrelated Clang bug: https://bugs.llvm.org/show_bug.cgi?id=38356
2018-07-30 22:00:21 -04:00
Augustin Cavalier
c67634d98c BuildSetup: __NO_INLINE__ and -fno-delete-null-pointer-checks.
* __NO_INLINE__ fixes the cross-build on some glibc-based systems with
   newer compilers, as it prevents glibc from declaring functions inline
   that we override in libroot_build.
 * We can now enable tree-vrp as long as no-delete-null-pointer-checks
   goes where it used to.
2018-07-30 22:00:21 -04:00
Jérôme Duval
a27099f559 x86_64/x86_gcc2: don't depend on libgcc_s, libstdc++, libsupc++. 2018-07-23 20:57:59 +02:00
Jérôme Duval
46f078c0a3 PackageRules: add secondaryArch to the packageInfo grist.
this fixes the generation of multiple secondary architecture package infos.
2018-07-23 20:54:14 +02:00
Jérôme Duval
6de4d8fcf6 RepositoryRules: correctly handle multiple secondary archs. 2018-07-22 20:02:12 +02:00
Augustin Cavalier
1e29bfd7d8 Update all remaining consumers of the FreeBSD compat headers. 2018-07-18 20:10:04 -04:00
Alexander von Gluck IV
e66bdff5cc build/arch: Adjust min. ppc floppy + archive sizes. Now used.
Change-Id: I9bfcc79e1db623542258953a781de6e7b2e44f92
2018-07-09 10:38:10 -05:00
Alexander von Gluck IV
da54ef94a8 build/profiles: Add @minimum-cd profile for things like ppc
Change-Id: Id50d6ff6eaca598c00043d5668ad836a48a74262
2018-07-09 10:36:07 -05:00
Alexander von Gluck IV
18e7b99797 build: Drop specalized haiku-boot-cd-ppc target
* Now generated via haiku-boot-cd when target ppc

Change-Id: I1d4e83c4d95ebc18b0dab28ffb2af03db5dc9d1d
2018-07-09 09:46:30 -05:00
Jérôme Duval
4603cb3cd3 bootstrap: update binutils x86_64 versions. 2018-07-06 19:01:27 +02:00
Augustin Cavalier
e89c61736e drivers/network/wlan: Import idualwifi7260 from FreeBSD 11.2.
The lowest model number supported by this driver is "3160", but that's just
Intel's insanity: the 7260 was released the quarter before it. So following
our naming convention strictly, "7260" is the correct name for this driver.

The firmware situation for this one is also a little different. Unlike past
instances where Intel has released mostly nonsubstantial firmware updates,
allowing us to just copy a recent-ish version from the iwlwifi archives,
the firmware is more closely tied to the driver in this series. As a result,
some of this firmware is not even used by Linux yet (they're a few versions
behind it seems), so the firmware packages included here come from FreeBSD.

One major hardware feature - RX of multiple frames at a time - is disabled
in this commit, as it depends on mbuf reference-counting, according to the
FreeBSD developers I asked, which we do not implement yet. I'll hopefully
get to looking at that in the next few weeks.

And with that, I finally have WiFi on my primary laptop, my original reason
for setting out on this quest last year. This commit was pushed through it,
even :)
2018-07-04 20:46:32 -04:00
Augustin Cavalier
b806d76f78 HaikuPortsCross: Updates for ARM. 2018-07-03 19:06:33 -04:00
Augustin Cavalier
d1c51097eb Upgrade FFmpeg to 4.0.1 across the board (including GCC2.)
This was accomplished by adding some pretty nasty hacks to the FFmpeg recipe
so that we can compile it for the GCC2 ABI using GCC7. This works because
GCC's C ABI has not changed between GCC2 and GCC7.

As a consequence of this, pretty much all the longstanding issues of the
ancient-and-still-miscompiled FFmpeg 0.10 are now completely gone.

Fixes #5080, #8461, #12696, #12436, #13981 #13410, #13337.
Closes (possibly fixed earlier) #8605, #8511, #6984.
Probably fixes (couldn't test) #13989, #11974.
2018-07-02 22:21:27 -04:00
Augustin Cavalier
e936fc859b build: Cleanup OptionalPackages.
* Remove WifiFirmwareScriptData; the new mechanism is to use the script
   to create a true package, and it also supports the offline downloading
   this would have provided.
 * Remove "FFMpeg"; never used -- the "ffmpeg" package is actually added
   via BuildFeatures.
 * Remove Bluetooth; now provided as part of the main Haiku package.
2018-07-02 18:26:06 -04:00
Augustin Cavalier
8547d09e97 build: Rework InstallSourceArchive into AddHaikuImageSourcePackages.
Also add AddHaikuImageSourcePackages invocations for all relevant
(i.e. [L]GPL'ed) packages.

Doesn't truly fix #9990 as PackageKit cannot be used to install source
packages, but this is enough for creating a redistributable image,
so that ticket can be moved out of the beta1 milestone now.
2018-07-01 14:25:10 -04:00
Augustin Cavalier
2a3a847f82 HPGSTranslator: Remove from the tree.
Not included in the build and not referenced anywhere else. Now lives at
HaikuArchives.
2018-06-19 23:43:53 -04:00
Augustin Cavalier
0a23d1fb23 jam: Remove InstallOptionalHaikuImagePackage; unused following previous commit. 2018-06-19 23:15:34 -04:00
Augustin Cavalier
571def7114 WebPositive: Store default bookmarks in git instead of downloading them.
No functional change. Ideally we would create these via ResAttr like we do
the mail-providers, but these have attributes on their directories and not
just the files, so that will be slightly trickier, so for now just keep them
in their zip format.
2018-06-19 23:11:58 -04:00
Augustin Cavalier
b2f22ba09f build: Actually disable non-useful Clang warnings.
* The if-case was appending to gccBaseFlags after the rest of the file
   was done using it, so it was ineffective. Now we set it with the rest
   of the baseFlags.
 * We already pass no-integrated-as in configure, no need to do it in
   MainBuildRules.
 * B_USE_BUILTIN_ATOMIC_FUNCTIONS isn't used anymore, so get rid of it.
2018-06-18 22:04:48 -04:00
Augustin Cavalier
29a21a63cb ArchitectureRules: Enable -ftree-vrp, but use -fno-delete-null-pointer-checks everywhere.
Most of the problems with tree-vrp stemmed from its deletion of null-pointer
checks (see linked commit in the source.) Now, GCC has a flag to control that,
and with it enabled I can boot to the desktop even with tree-vrp enabled.
2018-06-18 19:32:13 -04:00
Augustin Cavalier
b06628148f HaikuPorts: Update nano to not depend on libmagic. 2018-06-17 15:37:05 -04:00
Augustin Cavalier
c1f451fa9b HaikuPorts: Sync packages with latest buildmaster (most notably, WebKit.) 2018-06-17 12:58:36 -04:00
Kacper Kasper
c49f045421 Link WebPositive with libWebKitLegacy on x86_64
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
2018-06-17 12:58:19 -04:00
Augustin Cavalier
b337e9a8fd Remove HAIKU_INCLUDE_PATENTED_CODE.
Nothing uses it anymore. Fixes #8935.
2018-06-13 18:07:30 -04:00
Jérôme Duval
08bc83d7ae bootstrap: update x86_64 versions. 2018-06-12 23:56:18 +02:00
Jérôme Duval
b3e749b0c1 kernel,libroot,boot: remove c++11 and gnu++11 flags.
* c++14 is the default with current GCC
* remove pragmas for x86intrin.h
2018-05-28 18:54:22 +02:00
waddlesplash
02a7351fa2 Upgrade to GCC 7. 2018-05-22 21:43:38 -04:00
Alexander von Gluck IV
20aff1c8ca HaikuPorts/x86: Fix x86 build_packages repo url
Change-Id: Ib8f70f87b70b146c9342890bbff80cd4cc5e9680
2018-05-21 13:32:49 -05:00
waddlesplash
71819cc094 ArchitectureRules: Disable the 'fork' builtin on GCC4+.
On GCC 7.3, it conflicts with our definition of 'fork'. The documentation
states that disabling builtins has no effect on versions where they
do not exist, so we don't need to check for GCC7 here.
2018-05-19 20:33:10 -04:00
waddlesplash
d1feb7cb60 build_cross_tools: Have scripts exit on failure.
Previously they just silently continued, which meant that if part of the
cross-tools build failed, you would have to scroll back pretty far to
see what the failure was.
2018-05-19 14:54:10 -04:00
fbrosson
4e0c3c7cfe HaikuBootstrap: add the "ram_disk" and "virtio_net" drivers.
* The ram_disk driver was missing in the bootstrap images. Adding
  it will allow the ramdisk command to work. And with a modified
  haikuports.conf one might even use a ramdisk TREE_PATH.
* The virtio_net driver will probably be handy in some situations.
2018-05-14 16:33:36 +00:00
Adrien Destugues
58ce50d3a5 Try to fix gcc2 build
git_svn needs alien_svn, but we don't include this in the build repos.
Remove it from the preinstalled software, it is available in the depot
if people need it.
2018-05-07 13:31:49 +02:00
Jessica Hamilton
74bfec3b96 build/jam: whitespace cleanup.
Change-Id: I80c9a51417631b1f283923451f5bb530097b74f3
2018-05-07 13:12:16 +12:00
Adrien Destugues
2ecf221b74 Fix name of libWebKit for newer releases.
Yes, we're now officially using "legacy" WebKit!
2018-05-06 20:22:25 +02:00
Adrien Destugues
efd07aad5b Update to haikuwebkit 1.6.4 (x86 only).
... and synchronize all packages with haikuports.
2018-05-05 18:00:18 +02:00
Jérôme Duval
891a743ac3 x86_64: add kernel define and macro for x86 compatibility.
thus the kernel can be built with 32-bit compatibility support.

Change-Id: I5699bcb04908d5abb01da3166c3c180582b9026f
2018-05-05 09:31:40 +00:00
Jérôme Duval
1894e9b6a7 Add runtime_loader in secondary bootstrap packages.
add grist to runtime_loader source files.

Change-Id: I09c58b5cc1d57034632df99b4fb3c80e3ff49e3e
2018-05-02 16:46:02 +00:00
Jérôme Duval
eaa5720b74 Add x86 secondary arch to x86_64 cross repository.
Change-Id: I8b6ff4effa1469a56a02b0a6f30821bbbc3c62b6
2018-04-29 17:29:27 +00:00
Jérôme Duval
ae5821e892 Set the image size for debug releases to 1GB. 2018-04-04 19:18:19 +02:00
Alexander von Gluck IV
36ea34060a build/ImageRules: rm_attrs doesn't know -R
Change-Id: I3dcd8a1fe117b6b0c2b741fc383df048de8dac8f
2018-03-13 15:51:38 -05:00
Adrien Destugues
7de029128e Add "recover" to the default image.
Unfortunately this is needed often enough that it deserves to be there…
2018-03-10 15:46:32 +01:00
Alexander von Gluck IV
40a466d7b8 HaikuPorts/ppc: Add final missing packages
Change-Id: I48391b8a53d7d609c2ee2860c551a773f84b895e
2018-03-08 15:04:29 -06:00
Alexander von Gluck IV
8fd650cfdf Haikuports/ppc: Add most* packaged needed for minimum-raw
* There is a new requirement for bootstrap... fontconfig.

Change-Id: Iaa2cb38b0fd925f750d6890e392f946bf42604e7
2018-03-08 14:45:11 -06:00
Augustin Cavalier
d3bdde3594 HaikuPorts: Add libidn2.
New dependency of gnutls36.
2018-03-08 11:34:52 -05:00
Augustin Cavalier
853d003ed9 HaikuPorts: Update again after openexr rebuild.
Due to https://github.com/haikuports/haikuporter/issues/158
2018-03-07 20:34:36 -05:00
Augustin Cavalier
61206a24c9 build: Cleanup of libgnuregex usage.
John's revert of my removal commit dragged back a bunch of cygwin/sunos
cruft, as well as re-adding RegExp.cpp to the host libshared, that we don't
need.

Instead, remove this and add libgnuregex_build to just the tools/keymap
link alongside the FreeBSD gnuregex case.
2018-03-07 18:04:31 -05:00
Augustin Cavalier
9e13d1b8d1 HaikuPorts: Update against current repos. 2018-03-07 18:04:31 -05:00
Alexander von Gluck IV
b1da0c3c47 HaikuPortsCross/ppc: Fix bash/bison/icu/make versions
Change-Id: I3fb8ac8059912c0ed5cca7ebeaf07ac0a8ee759c
2018-03-06 21:52:30 -06:00
Alexander von Gluck IV
82876dc4cb build_cross_tools_gcc4: Disable TLS on PowerPC for now
Change-Id: Ib99a1a4aeeb5d17a301ffd1d9c5fcadd37261ebf
2018-02-28 21:46:24 -06:00
John Scipione
940a3a2322 Revert "build/libgnuregex: Remove."
This reverts commit ca087b0532.

Mac OS X requires libgnuregex for Keymap
2018-02-16 16:45:11 -08:00
Jérôme Duval
272a3e2ced Build: in ArchitectureSetup, use the cpu variable instead..
of the HAIKU_ARCH variable, which is the primary architecture cpu.
2018-01-31 18:32:35 +01:00
Jérôme Duval
7e4c719dbb Fix x86 bootstrap on x86_gcc2. 2018-01-30 19:19:18 +01:00
Jérôme Duval
86ae71e8ee bootstrap: add missing curl and less packages for x86_gcc2. 2018-01-29 15:58:39 +01:00
Jérôme Duval
e6168b4ffe Set the image size for debug releases to 900MB. 2018-01-14 10:08:05 +01:00
Jérôme Duval
813b6c656f disasm: add to the image on x86_64. 2018-01-13 15:54:21 +01:00
Augustin Cavalier
42877d24cf makefile-engine.html: Does not belong in docs/develop.
docs/develop is for documentation about Haiku's internals. The Makefile-Engine
is public API. For now, put it in docs/misc.
2018-01-10 16:12:15 -05:00
Augustin Cavalier
8a9e1e0d4a Removal of non-Haiku target platform logic from build system (part 1.)
Following recent changes to use libroot_build on Haiku also, it is now
actually impossible to build Haiku components on non-Haiku platforms
(BeOS R5, Dan0, BONE, Zeta), so we can remove any logic related to this.

This is only the first part; still to be removed are:
 * SetSubDirSupportedPlatformsBeOSCompatible
 * HOST_PLATFORM_BEOS_COMPATIBLE
 * TARGET_PLATFORM_BEOS_COMPATIBLE
2017-12-31 16:14:22 -05:00
Augustin Cavalier
699b4bbab9 libroot_build: *Actually* fix attribute usage on Haiku.
To quote jscipione (from 95e8362c52),
"Let me tell you a story about a bug" -- though this tale spans a much
lesser time than that one did.

In 5e19679ea3, I enabled libroot_build for
Haiku, instead of using the system libroot as we had before. There were
a number of bugs introduced along with this that I hadn't fixed (and there
may be more after this), but most of the obvious ones (crashes on x86_64...)
were fixed shortly enough.

Attribute usage, though, was a different story. Unlike most of the POSIX
calls in libroot, which were aliasing system functions no matter what the
platform, the attribute calls were not, as they are specific to Haiku.

Initially I had completely forgot about them, and it wasn't until a few days
later when I noticed that I had an "attributes" directory in my generated
that I realized that the "generic" attribute layer was being used on Haiku.
I attempted a fix for this in 5e19679ea3,
thinking that would clear the problem up, but I didn't actually run a test
beyond seeing that my BuildConfig had been updated properly. In fact,
BuildSetup was hard-wired to not even pass that definition through on
Haiku, and so that commit had in effect caused nothing.

My initial "fix" of just changing BuildSetup then caused a build failure,
as while libroot_build itself compiled, it ran into errors whenever attributes
were used, because in letting the real libroot's attribute calls shine
through, I had bypassed libroot_build's FD emulation/shim layer.

Then I tried and failed at three separate attempts to solve this with code:
 - a version of the "fs_attr_...h" interface for Haiku. This proved possible
   in theory, but in practice I would need to reimplement a lot of attribute
   handling code in it, because all I had access to from there was syscalls.

 - a version of "fs_attr_untyped" that bypassed its reimplementations of
   the "fs*attr" functions for the libroot ones, only using the FD shim layer.
   This proved possibly not even theoretically possible because it would have
   caused preprocessor hell in some of the build headers, and also assumptions
   about how attributes are read were totally different.

 - a completely new "fs_attr_haiku" that was a completely new interface to
   the fs*attr functions. This proved practically impossible because of the
   need to include structures from the system libroot to call out to readdir,
   etc. that attempts to solve would also have caused preprocessor hell.

Then I realized that the Linux xattr emulation library, which I'd used
as a reference when attempting the first solution, was shipped by default
as a system library in all builds of Haiku ... and so I could just tell
fs_attr_untyped to use the Linux xattr handler, and then link against libgnu.

So that is how I arrived at this strange and decidedly unorthodox solution
to a problem of my own creation.
2017-12-29 21:26:00 -05:00
ohnx
e6c08856dd bin/compress: Remove.
Per #10267, "Most (ported) third-party software should be removed
from the Haiku source repository."

Since HaikuPorts already has the ncompress package, this file
should no longer exist.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Original patch missed modifying the "minimum" definition and the
src/bin/Jamfile, so I took care of that.
2017-12-29 15:33:56 -05:00
Rene Gollent
16b34a8fc7 Fix FreeBSD build.
- Recent changes to the build system appear to make the assumption
  that the GNU regex APIs are universally available. This isn't the
  case on FreeBSD, which requires libgnuregex to provide that
  functionality. This broke the host keymap build.
2017-12-27 23:06:56 -05:00
Fredrik Holmqvist
73159ec931 Make UEFI boot-platform build again
gnuefi package was replaced by gnu_efi_kernel, but build
was not updated. This is guesswork, as I couldn't track down what changed.
It finds headers, headers_arch and lib and works so should be ok.
2017-12-27 18:51:30 +01:00
Augustin Cavalier
ca087b0532 build/libgnuregex: Remove.
It was needed on macOS for a time when BUrl used regexes for parsing.
Now it does not, and so we can remove libshared's RegExp from build
libshared, and thus also libgnuregex.
2017-12-24 12:27:47 -05:00
Adrien Destugues
ab75d3b5a8 Do not advertise libavdevice in ffmpeg build feature.
It is not actually used by our ffmpeg plugin.
2017-12-24 16:39:23 +01:00
Kacper Kasper
9a3c78bc4d Enable Werror for EXRTranslator. 2017-12-17 17:57:54 +01:00
Kacper Kasper
b875d6d43b Outsource OpenEXR.
* Style fixes in EXRTranslator.
2017-12-17 17:57:53 +01:00
Augustin Cavalier
19b9099b98 HaikuPorts: Bump versions of EXR libraries, again. 2017-12-17 11:13:43 -05:00
Alexander von Gluck IV
11790e14ef kernel/drivers: Kill Beceem WiMAX driver. RIP
I wrote this back in 2010 as my first driver project.

Reasons to remove it:
  * The license is GPL
  * Current WiMAX hardware is generally WIFI based.
  * It controlled the hardware, but never worked
    for network access since we need SSL certs and stuff
    which vendors weren't too open with.
  * WiMAX kind of died (at least in the US)

I left the wwan directory, it would be a nice spot
for CDMA / GSM dongle drivers.
2017-12-17 09:18:15 -06:00
Augustin Cavalier
6fc4a39b06 build/HaikuPorts: Add OpenEXR so it can be outsourced. 2017-12-16 12:51:18 -05:00
Augustin Cavalier
5e19679ea3 build: Use libroot_build on Haiku.
Previously we just used the system libroot, which of course meant
that when libroot's ABI changed, the build broke. Now we use the full
libroot_build that we do on non-Haiku platforms. The logic for "BeOS-compatible
but not Haiku" does not really apply anymore, so it has been gutted where
appropriate (and libhaikucompat has been decoupled from the build.)

The only caveat here is the change to Errors.h -- we really should be using
the system's one where I included the one from the tree, but for whatever
reason, GCC2 refused to handle the #include_next properly.

Fixes the build breakage of Haiku-on-Haiku by my prior commits (sorry).
2017-12-13 19:47:39 -05:00
Augustin Cavalier
416460cf4a HaikuPorts: Update build packages set (again).
Previous libwebp package pulled in some dependencies we didn't want.
2017-12-10 15:44:48 -05:00
Augustin Cavalier
2934d7f856 HaikuPorts: Update build packages set. 2017-12-10 14:28:26 -05:00
Augustin Cavalier
825700d34a configure: Rewrite implementation of --update.
Previously --update was kind of a hack, as it just dumped all
the variables from BuildConfig back into ./configure and attempted
to rerun from there.

Instead, now we store all of the variables and environs configure
was invoked with in the top of BuildConfig and re-call it using them.
This is much more robust, as configure will actually recompute
all of the values from the BuildConfig.

As a side effect, if configure was originally invoked to build crosstools,
it would have done so again, so instead add a check to see if they
exist, and skip them if they do. It's easy enough to delete the
directory if you want to force a crosstools rebuild.

Briefly discussed with mmlr on IRC.
2017-12-04 20:14:18 -05:00
Michael Lotz
a88944c86e bootstrap: Add missing noto package to cross repos. 2017-12-04 19:52:04 +01:00
Michael Lotz
1484b2336a bootstrap: Update cross packages for make, bash, icu. 2017-12-04 19:52:04 +01:00
Michael Lotz
22271bfdc2 bootstrap: Strip build down by removing unneeded packages.
Don't include makefile_engine, userguide, welcome, netfs and userland_fs
in the build for bootstrap.
2017-12-04 19:52:04 +01:00
Augustin Cavalier
e33d3563dc RepositoryRules: Restore mistakenly deleted local variable. 2017-12-02 18:48:21 -05:00
Augustin Cavalier
8dcb910a20 RepositoryRules: Do not use the downloaded repo.info.
Instead build the one in-tree from src/data/package_infos/. Fixes the
"HaikuPorts repos have wrong URL" problem that has occured since the
switch to buildmaster repos.
2017-12-02 18:36:26 -05:00
Augustin Cavalier
a992fe6af8 RepositoryRules: RepositoryConfig does not need/use URL now. 2017-12-02 18:29:13 -05:00
Alexander Coers
5797d59f94 ATA: Support for Highpoint HPT36x/37x PCI controller
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Fixes #13819. Some style fixes by me.
2017-12-02 11:45:57 -05:00
Augustin Cavalier
97599bfc05 build: Fix release build profile. 2017-12-01 22:28:43 +01:00
Augustin Cavalier
1f6fe0559b build: Copy and use Clang's vector intrinsics headers.
When compiling with GCC, these headers get pulled in from the
gcc_syslibs_devel package, but we cannot do something similar
for Clang as Clang adds/removes internal builtins used by
the headers nearly every version. So instead we just copy
all the intrinsics headers from current Clang into generated,
and make sure this directory is included before any others.
2017-12-01 21:16:13 -05:00
Augustin Cavalier
6570684235 configure: Further fixes to Clang support.
* Actually locate the clang executable, and allow user overrides
 * Properly preserve arguments in get_build_tool_path
 * Fix get_build_tool_path for commands with dashes (e.g. "clang-5.0")
2017-12-01 14:23:57 -05:00
Alexander von Gluck IV
2028f6e7fa repo/arm: Correct repo url 2017-11-28 18:33:28 -06:00
Alexander von Gluck IV
5ec3b742e9 repo/arm: One more commit for good luck
* Update repository file to hardlink_packages modified one.
* Add some basic process overview to directory.
* We don't normally document in paths, but this stuff is complex.
* Documentation improvements welcome.
2017-11-28 18:20:31 -06:00
Alexander von Gluck IV
2694b5d602 repo/arm: Drop non-required missing any arch packages 2017-11-28 17:46:24 -06:00
Alexander von Gluck IV
a0c92d9e9e repo/arm: Update url to new location 2017-11-28 17:13:38 -06:00
Augustin Cavalier
08965a6568 build: Remove now-defunct jam commands. 2017-11-25 21:15:10 +01:00
Augustin Cavalier
5f8613a22c build: Cleanup and fixes following previous commits.
* Hashing semantics for the new build repositories are different than
   the old ones, so update those (if the x86 build was not broken before
   it is now...)
 * OptionalPackages has been updated slightly (removed libtool and git_cvs
   from the default images, as they are rarely used nowadays and would pull
   in a bunch of dependencies we don't really care for either)
 * Removed lib:libqrencode from Haiku package requires (qrencode_kdl is a
   static library, the userland libqrencode is not used anywhere in the tree,
   as far as I can tell)
 * Fix build of JPEG2000 translator after update
 * Decouple fluidsynth build machinery and remove from image now that it
   is no longer used
 * Update repository URL in Repositories preflet
2017-11-25 21:15:10 +01:00
Augustin Cavalier
36f675968e HaikuPorts: Update to point to the buildmaster repositories.
x86 is unaffected, as already mentioned. This breaks the build,
but since this diff was large, I wanted to have the functionality
changes be clear, so they are in the next commit.
2017-11-25 21:15:10 +01:00
Augustin Cavalier
174f207416 repositories/HaikuPorts: Strip the x86_gcc2 and x86_64 repos down to build deps only.
The packages that remain are only the ones used somewhere in Jam
(including ones off by default, e.g. Wonderbrush, Live555.)

The x86 repo is untouched as it is being phased out and has no buildmaster-
generated equivalent.
2017-11-25 21:15:09 +01:00
Augustin Cavalier
a9916f9b1a build/jam/BuildFeatureRules: Make EnableBuildFeatures actually work.
It was trying to use $(feature:U) outside of the loop where it is
actually set. Thanks to PulkoMandy for spotting the problem.

(How did this not break tons of stuff?)
2017-11-25 21:15:08 +01:00
Jérôme Duval
331f527e44 Update zstd packages for x86. 2017-11-25 09:21:08 +01:00
Jérôme Duval
6ac3a280f4 Add ZstdCompressionAlgorithm.
* kernel lib is decompress only (like zlib).
* expand compression_test for zstd.
2017-11-24 21:35:49 +01:00
Humdinger
34a95923cd Added dvda_author package (gcc2h) 2017-11-16 19:50:34 +01:00
Jérôme Duval
5623698f55 Update haikuwebkit packages for x86_64. 2017-11-03 20:56:54 +01:00
Humdinger
af463b82f8 Removed virtualbox_guest_additions from 64bit repo
Apparently, they compile, but don't work on 64bits.
2017-11-03 16:29:57 +01:00
Humdinger
73edde126a Update PDFTranslator package
Needed a rebuild after the BControlLook changes.
Works on x86_64 too.
2017-11-02 08:07:36 +01:00
Humdinger
8357640d63 Add recently outsourced "bc" package for gcc2 2017-11-01 09:06:04 +01:00
Augustin Cavalier
055c4e1406 OptionalPackages: Remove unused cruft. 2017-10-29 13:22:34 +01:00
John Scipione
a6c6dd77f3 Add Activity Monitor to regular image
... now that it has been removed from minimum it must be added
to regular image to keep it.
2017-10-23 10:49:48 -07:00
John Scipione
aa4d1b078a Remove libmedia.so and Activity Monitor from minimum
as per Jérôme's request.

Revert "Add libmedia.so to the minimum image"

This reverts commit 8eda6db9a8.
2017-10-23 10:13:24 -07:00
Humdinger
89638ad3e0 Bump yab, yab_ide packages
needed a rebuild. Something went wrong with my last uploaded
build still hitting the BControlLook ABI change...
2017-10-23 18:34:16 +02:00
Jérôme Duval
30d4a921e7 Update mesa and mpv packages for x86_64. 2017-10-23 10:32:45 +02:00
Humdinger
ee78540238 Update yab packages for gcc2 2017-10-22 19:46:23 +02:00
Humdinger
70ba43b303 More updated packages for gcc2
BePDF now available for gcc2.
Removed bepdf_x86.
2017-10-22 11:14:22 +02:00
Humdinger
5ed3f8854c Updated libpng16 for gcc2 2017-10-22 11:08:08 +02:00
Humdinger
c64bdb8b14 More updated packages for gcc2 2017-10-22 10:53:08 +02:00
Humdinger
ea64fb48ea More updated packages for gcc2 2017-10-22 10:50:30 +02:00
Humdinger
592cb848ec More updated packages for gcc2 2017-10-22 10:46:29 +02:00
Humdinger
45f144d6d2 Updated packages for gcc2 2017-10-22 10:29:01 +02:00
Humdinger
dcdcd588c1 Updated libpcre and libpcre2
the first needed by Pe.
2017-10-22 08:35:22 +02:00
Humdinger
7e7c1e6bd4 Updated packages for gcc2
* Pe
* Vision
2017-10-22 08:21:05 +02:00
John Scipione
8eda6db9a8 Add libmedia.so to the minimum image
libmedia.so was used by at least 2 apps included in the minimum image,
Activity Monitor and Deskcalc which subsequently failed to load on minimum.

Deskcalc wasn't actually using libmedia.so so I managed to get it to link and
run on minimum, however, Activity Monitor is using libmedia.so so needed it
to be present.

To fix this I added libmedia.so to the minimum image, I hope this does not blow
its size budget. (adds 1.0MB)
2017-10-21 16:47:57 -07:00
Jérôme Duval
1ef54b24ec Update libpng_x86 and libxslt_86 packages for x86_gcc2. 2017-10-21 10:02:20 +02:00
Alexander von Gluck IV
7e2d856556 dts: Rename bbb to boneblack to match u-boot 2017-10-20 13:12:14 -05:00
Jérôme Duval
6417d92620 Update/add now fixed packages for x86_64. 2017-10-19 17:16:18 +02:00
Jérôme Duval
0c57e260d7 Rebuild x86_64 packages. 2017-10-10 22:45:32 +02:00
Adrien Destugues
c80ec6a9fe Rebuilt HaikuWebKit to fix ABI breakage.
WebPositive should work again.
2017-10-09 07:23:11 +02:00
Jérôme Duval
98b3149ca1 bc: use the outsourced build.
* remove in-tree bc.
2017-10-08 13:28:38 +02:00
Jérôme Duval
1f424b6ac8 Mass update for x86_64. 2017-10-07 17:07:21 +02:00
Jérôme Duval
c1e80b79c1 Set the image size for debug nightlies to 850MB. 2017-10-02 21:37:02 +02:00
Jessica Hamilton
916d4f5d75 rust (x86_64): updated with working cargo.
* Note that this is a cross-compiled version from git
  master, so may run into bugs.

ref: https://github.com/haikuports/haikuports/89c999e9e
2017-09-22 03:35:47 +00:00
Jérôme Duval
9b80d1767a Set the image size for the debug minimum profile to 450MB. 2017-09-11 18:12:53 +02:00
Jessica Hamilton
6cc6f04747 build_cross_tools_gcc4: bring in sync with native compiler.
* Previously, the cross-compiler would generate code that doesn't
  run on Haiku, particularly where TLS is concerned. It also ended
  up with a c++config.h header incompatible with the version in
  the native compiler.
* Now possible to correctly cross-compile rust for Haiku.
2017-09-05 21:41:39 +00:00
Jessica Hamilton
fe434a740e rust (x86_64): new package, development snapshot.
* Note that this is a cross-compiled version from git
  master, so may run into bugs.

ref: https://github.com/haikuports/haikuports/b2214fb42
2017-09-05 21:23:19 +00:00
Jessica Hamilton
e8caf2e794 llvm (x86_64): update to package with threading enabled.
ref: https://github.com/haikuports/haikuports/commit/c539ff63
2017-09-05 15:49:40 +00:00
Humdinger
274c11610b Add Filer v1.2.0 and StreamRadio 2017-09-02 19:23:37 +02:00
Augustin Cavalier
a222e4d0cc virtio_net: Add to image.
Stress-tested in VirtualBox. No major performance or usability problems;
even when I had tracing enabled, it was transferring data at ~1.1MB/s.
2017-08-31 17:37:50 -04:00
Humdinger
7a8f174967 Updated FilWip package
...includes crash fix for 64bit when launching preferences.
2017-08-31 17:29:10 +02:00
Adrien Destugues
8fe6df22f8 update php version to remove ICU55 dependency. 2017-08-29 19:26:39 +02:00
Adrien Destugues
e9300454b6 Update vlink to latest version. 2017-08-27 20:34:01 +02:00
Adrien Destugues
a7c71e2acb Add HxC Floppy disk image conversion tool. 2017-08-27 11:28:35 +02:00
Adrien Destugues
f04a6bd9b9 Update vasm version. 2017-08-26 21:17:05 +02:00
Adrien Destugues
dd64582866 HaikuwebKit 1.6.2. 2017-08-19 11:20:32 +02:00
Humdinger
ec90bfd866 Re-built Album package
Needed a rebuild due to changes in the locale kit (NumberFormat).
2017-08-14 08:57:04 +02:00
Jérôme Duval
ed8aae4664 Update haikuwebkit package for x86_64. 2017-08-07 22:50:18 +02:00
Jérôme Duval
e272017e2f Update binutils package for x86. 2017-08-06 16:29:10 +02:00
Jérôme Duval
03820c114a Update binutils_x86 and binutils for x86_gcc2 and x86_64.
* starting with 2.27, binutils defaults to initfini-array instead of init and fini,
this leads to problems in Haiku, just disable for the time being.
2017-08-06 14:12:28 +02:00
Humdinger
337e3285ab Update CatKeysEditor package for gcc2h
Among other fixes and more translations, there's now an "Import"
feature to merge in another catkeys file.
Handy when the en.catkeys changed and you want to import the translated
catkeys file for the previous version, which already contains the
translations for the strings that haven't changed.
Hmm... hope what I wrote there is decipherable...
2017-08-03 14:49:43 +02:00
Humdinger
96251548d1 Update gcc2.95 package to version 2017_07_20-1
Needed to build Haiku after Ingo's bump of the gcc2 version:
http://cgit.haiku-os.org/buildtools/commit/?id=aa5e6148654241454155fd352641bf4b97d53750
2017-08-01 21:05:23 +02:00
Jérôme Duval
4b530fca37 Update pdfwriter and sip_python packages for x86_64. 2017-07-31 20:28:12 +02:00
Augustin Cavalier
ff0184bed0 Remove GPL-add-ons build machinery.
No longer used by anything (it appears some old kernel drivers that
are not included in the build might use it, but I don't know why
they need it -- we already ship GPL'd code [libntfs] for the kernel
in the default build unconditionally.)

Briefly discussed with js a few weeks back.
2017-07-30 14:13:42 -04:00
Augustin Cavalier
dd4eae252e ac3_decoder: Remove from tree.
Not included in the build (locked behind a SubIncludeGPL);
now lives at HaikuArchives.
2017-07-30 14:06:05 -04:00
Augustin Cavalier
283b84cd62 xvid_decoder: Delete from tree.
Not included in the build (locked behind a SubIncludeGPL & commented out);
now lives at HaikuArchives.
2017-07-30 14:01:05 -04:00
Adrien Destugues
1b707a6822 fix libdsk provides
forgot to change the library version when updating the package.
2017-07-30 10:00:43 +02:00
Adrien Destugues
0af198bcf8 HaikuWebKit 1.6.1. 2017-07-30 08:44:15 +02:00
Alexander von Gluck IV
f806447f52 aarch64: Add aarch64 build host support
* Maybe it will be a target someday.
* 64-bit ARMv8 for those not in the know.
2017-07-27 18:45:54 -05:00
Humdinger
f9e5116412 Updating jam package 2017-07-18 20:50:29 +02:00
Humdinger
c5395d791e Added Filwip package for 64bit 2017-07-18 18:03:21 +02:00
Jérôme Duval
8e7468544b Update sane_backends packages for x86_64.
* missed during rebuild.
2017-07-17 21:04:43 +02:00
Jérôme Duval
0c7d258bb3 Update Haikuwebkit, pyqt, openshot and qt5 packages for x86_64. 2017-07-15 09:11:37 +02:00
Jérôme Duval
8375828a9f Add pdfwriter package to the release profile.
noto_cjk_jp doesn't exist, replace with noto_sans_cjk_jp.
2017-07-12 18:54:45 +02:00
Humdinger
efef87486c Add pdflib and PDFWriter packages for gcc2 2017-07-12 17:52:56 +02:00