Commit Graph

50935 Commits

Author SHA1 Message Date
Oliver Tappe
e29a6c4cd4 Introduce stage0 into the bootstrap process.
* This stage builds the gcc packages to get the shared syslibs, which
  only requires the Haiku glue code.
* Add separate declaration section for stage0 packages to
  HaikuPortsCross repository files.
* For the bootstrap_stage0 platform, fall back to the gcc headers
  provided by the cross-compiler.
2014-08-13 13:34:26 +02:00
Oliver Tappe
2e477cf688 Simplify handling of package names.
* No longer apply somewhat crude mechanism for converting a package name
  into a corresponding port name - haikuporter by now supports package
  names directly.

This fixes a problem when trying to pass 'gcc_syslibs_devel' to
haikuporter, which only ever saw 'gcc_syslibs'.
2014-08-13 13:34:07 +02:00
Oliver Tappe
f7653b1b74 Optionally build glue code for bootstrap_stage0 platform. 2014-08-13 13:32:49 +02:00
Oliver Tappe
445257ffd6 Fix missing symbols in <stubbed>libroot.so.
* A couple of symbols reuse the same address (via weak symbols), so
  we adjust generate_stubs.py accordingly.
2014-08-13 13:32:49 +02:00
Oliver Tappe
b80e14ae92 Add pseudo target for bootstrap_stage0 platform. 2014-08-13 13:32:48 +02:00
Oliver Tappe
91e3c8435e Only add Webpositive to image if it is available. 2014-08-13 13:32:48 +02:00
Oliver Tappe
ad598251d7 Set default of HAIKU_CONTINUOUS_INTEGRATION_BUILD. 2014-08-13 13:32:47 +02:00
Oliver Tappe
4ca98ce9a9 Cleanup with respect to headers rules.
* Move specialcasing of gcc2 from HeadersRules into the respective rule
  in SystemLibraryRules.
2014-08-13 13:32:47 +02:00
Oliver Tappe
b2883f6a0d Add support for building <stubbed>libroot.so.
* <stubbed>libroot.so is a shared library which contains all the symbols
  from libroot, but without any code. This library will be required by
  the (to be introduced) stage0 of the bootstrap process, in order to
  be able to link the shared gcc syslibs (libstdc++.so, libsupc++.so
  and libgcc_s.so).
2014-08-13 13:32:46 +02:00
Oliver Tappe
1af12dfb22 Drop Jamfile for building non-legacy libstdc++.so.
* We no longer fake it by converting the static lib into a shared one.
2014-08-13 13:32:46 +02:00
Oliver Tappe
11ae3c5fe7 Cleanup build system and configuration.
* Drop unused variables from build system that refer to the system
  libraries.
* Drop unused lists of libgcc objects.
* Drop no longer used variables from configuration script.
* Remove no longer needed building of kernel-libgcc and -libsupc++ from
  build_cross_tools_gcc4, only the boot-specific (32-bit) libs are
  built for a x86_64 target.
* Explicitly disable threads and TLS support when building the cross
  compiler, as the only libraries that are used by Haiku's build system
  is the 32-bit libgcc and libsupc++ for the bootloader on x86_64 (and
  for that neither is wanted).
2014-08-13 13:32:45 +02:00
Oliver Tappe
37f558d5a3 Let runtime_loader ignore RT_RELRO program headers.
* The new libstdc++.so contains program headers of type PT_RELRO (for
  making segments read-only after relocation). While the actual feature
  has not been implemented, the runtime_loader should now silently
  accept (and ignore) those program headers.
2014-08-13 13:32:45 +02:00
Oliver Tappe
220d040227 Use libstdc++, libsupc++ and libgcc from gcc_syslibs.
* Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so
  from the gcc_syslibs build feature for everything except x86_gcc2.
* Use libgcc_s.so from the gcc_syslibs build feature for everything but
  x86_gcc2 (which still carries libgcc as part of libroot.so).
* Drop filtering of libgcc objects for libroot, as that is no longer
  necessary since we're only using libgcc-as-single-object for libroot
  with x86_gcc2, where the filtered object file doesn't exist. Should
  the objects that used to be filtered cause any problems as part of
  libgcc_s.so, we can always filter them as part of the gcc build.
* Use libsupc++.so from the gcc_syslibs build feature for everything but
  x86_gcc2.
* Adjust all Jamfiles accordingly.
* Deactivate building of faked libstdc++.so for non-x86-gcc2. For
  x86_gcc2, we still build libstdc++.so from the sources in the Haiku
  source tree as part of the Haiku build .
* Put gcc_syslibs package onto the image, when needed.
2014-08-13 13:32:44 +02:00
Oliver Tappe
77253e671b Switch to using crtbeginS.o and crtendS.o unconditionally. 2014-08-13 13:32:44 +02:00
Oliver Tappe
938bf9fad2 Add more missing 'local's to variable declarations. 2014-08-13 13:32:43 +02:00
Oliver Tappe
afde44733f * When using the non-legacy compiler, use the c++ and gcc headers
provided in the gcc_syslibs_devel build feature for building Haiku.
* Simplify declaration of c++ and gcc headers for the legacy compiler -
  in the end we always use the ones living by our source tree anyway.
* Fix a couple of missing local declarations for jam variables, which
  were necessary to avoid a build problem with strace. There are
  probably more bugs like these hiding in our build system files, but
  I'm saving the fix for those to the next commit.
* Add new gcc packages to the HaikuPorts (x86*-)repositories.
2014-08-13 13:32:34 +02:00
Oliver Tappe
a07cdb6e9f Define two pseudo targets for the target and build platform.
* The main build rules now cause their targets to depend on the
  platform such that global per-platform intializations can be
  set up by making the platform pseudo target depend on the
  target returned by the initialization rule.
2014-07-31 18:07:16 +02:00
Oliver Tappe
ed25955ada Add SystemLibraryRules.
* This file contains jam rules for getting the different versions
  of libgcc, libsupc++ and libstdc++ used throughout Haiku's
  build system.
* Additionally, there are rules for accessing the c++ headers
  and the gcc headers.
* These rules are included by Jamrules, but not yet used anywhere.
2014-07-31 14:19:14 +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
Oliver Tappe
2ae3c64943 Improve IsPackageAvailable()
* When adjusting the package name for the secondary architecture,
  it is unclear where exactly in the package name the architecture
  specifier is. To remedy, we try all possible positions until
  we find the package (or there are no other possibilities).
2014-07-31 10:49:36 +02:00
Oliver Tappe
bd04aa3772 Cleanup: Fix missing evaluation of HAIKU_NO_LIBSUPC++.
* There's no user of HAIKU_NO_LIBSUPC++ anywhere, so the typo didn't
  have any effect.
2014-07-31 10:49:36 +02:00
Oliver Tappe
5cbd68a9b3 Update legacy compiler to version 2014_07_26. 2014-07-31 10:37:02 +02:00
Stephan Aßmus
e995976d4d HaikuDepot: Fixed outrageous lie. 2014-07-30 22:27:22 +02:00
François Revol
2a740449bb Use proper width for notification text
Fixes #10109.
2014-07-30 22:19:17 +02:00
François Revol
358a4dd379 ShowImage definitely knows Icon-O-Matic documents
And it's much easier to browse through data/artwork/icons!
2014-07-30 22:18:54 +02:00
François Revol
98f35f3a92 Add EHOSTDOWN to strerror() 2014-07-30 12:31:24 +02:00
François Revol
65b2278e9a How come we missed the case B_DONT_DO_THAT in strerror() ??? 2014-07-30 12:26:31 +02:00
François Revol
917634bc8a Add missing strings to strerror() for hrev46649 2014-07-30 12:26:31 +02:00
François Revol
35edaf281f gopher: Fix for 0-length path
This is the case for urls like gopher://gophernicus.org
(without trailing /), which ended up being downloaded instead of
displayed.
2014-07-30 11:20:56 +02:00
François Revol
b7e55f797d Some more comments on xdg_basedirs
At least WebOOB makes some use of those,
it should help unclutter the home directory.
2014-07-30 00:07:48 +02:00
Adrien Destugues
70f91e39aa Remove preprocessor checks from TestShell.h
* This is a header used by several parts of the code which should not
need to know about ELF symbol overriding and the fact that it is
optional.
* When the define is set, the methods will not be defined, but they
shouldn't be called, either
* This makes sure the memory layout of the class stays the same with the
define set or unset, and users can rely on it.

Fixes UnitTester on gcc2.
2014-07-29 23:05:52 +02:00
François Revol
dc5f63f635 Fix descriptions on X11 related packages 2014-07-29 22:43:28 +02:00
François Revol
70ed656a03 Add some X11-related packages
For XEmacs I need libXpm... which needs libX11... which needs...
2014-07-29 21:11:11 +02:00
Augustin Cavalier
ef21655b0b ca_root_certificates: Update to 2014_04_08-1.
Tested against wget, curl, and git, which all were still able
to verify certificates and download from HTTPS sites.

Signed-off-by: Oliver Tappe <zooey@hirschkaefer.de>
2014-07-29 18:41:48 +02:00
Augustin Cavalier
a9822c2d28 HaikuPorts/x86_gcc2: Update both FFmpegs to 0.10.14-1.
Signed-off-by: Oliver Tappe <zooey@hirschkaefer.de>
2014-07-29 18:09:47 +02:00
Colin Günther
f345d82773 FFMPEG Plugin: Code styles, typos and code deduplication.
- Kudos to stippi for taking the time pointing those out :)
  http://www.freelists.org/post/haiku-commits/haiku-hrev47576-srcaddonsmediapluginsffmpeg,1
- No functional change intended.

Signed-off-by: Colin Günther <coling@gmx.de>
2014-07-29 17:54:04 +02:00
François Revol
ca21718e14 Add python packages: dateutil, lxml, mechanize, requests 2014-07-29 17:20:51 +02:00
François Revol
d06cbe081b Add a profile.d file for XDG Base Directory Specification
We declare most of the XDG environment variables for this spec:
- XDG_CONFIG_HOME
- XDG_DATA_HOME
- XDG_CONFIG_DIRS
- XDG_DATA_DIRS
- XDG_CACHE_HOME

I'm not yet sure what to do with XDG_RUNTIME_DIR.
2014-07-29 17:02:24 +02:00
Adrien Destugues
dd6cdcf0b7 Fix copypaste bug in UnitTest rule.
Make the unittests target actually build all the UnitTests and not just
the UnitTestLibs.
2014-07-29 11:25:03 +02:00
François Revol
44a4999b89 gopher: Add TODOs 2014-07-28 22:01:49 +02:00
François Revol
80be7c9d8f gopher: Change 'd' type items to generic documents
Gophernicus uses it for PostScript as well.
2014-07-28 21:53:51 +02:00
François Revol
b8be186720 gopher: Handle errors from Gophernicus
It sends them as plain text instead of gopher directory
when it doesn't find something...
2014-07-28 20:26:47 +02:00
François Revol
e243a03476 gopher: return an error on resource not found 2014-07-28 19:15:16 +02:00
François Revol
111d695ac0 gopher: Use a BStackOrHeapArray as temporary buffer
And move it out of the loop, no need to construct it at
each iteration anyway.
2014-07-28 19:04:13 +02:00
François Revol
579f95647d gopher: (disabled) controls and size attributes on audio/video
Currently those crash WebPositive when enabled.
2014-07-28 18:34:50 +02:00
Arvind S Raj
7749faf602 Disable frame buffer for now since it's not essential. Fix involves correcting fault when writing to CM_CLKSEL_DSS during frame buffer initialisation. 2014-07-28 16:12:58 +02:00
Adrien Destugues
1dc356fb06 Test for the "Host" header containing the port.
* Also tests that receiving data using a listener works.
2014-07-28 16:10:05 +02:00
François Revol
dc8665f745 webpositive: Officially handle gopher: URI scheme now
Avoids it asking Google what to do with the URL.
2014-07-28 15:28:47 +02:00
François Revol
d9b7113a6d Add packages for lame 2014-07-28 15:17:47 +02:00
Adrien Destugues
a1cce97050 HttpRequest: more small fixes and cleanups
* Remove unneeded field fOutputHeaders and convert it to a local for the
only method that uses it,
* Don't return EOVERFLOW when flushing data from ZLib (the ZLib
decompressor returns this, but zlib docs states that this is NOT an
error condition).
* Replace unneeded temporary BNetBuffer of fixed size with BStackOrHeapArray.
2014-07-28 15:02:17 +02:00