From 83137678f67949971fbdbad839dc0dffc810084c Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Fri, 20 Jun 2014 13:40:28 +0200 Subject: [PATCH 1/9] NetSurf: fix install. * Don't hardcode the path to resources in the executable, use FindPaths * Set the proper desination dirs so things actually end up in the package. --- www-client/netsurf/netsurf-3.1.recipe | 7 ++- .../netsurf/patches/netsurf-3.1.patchset | 62 ++++++++++++++++++- 2 files changed, 66 insertions(+), 3 deletions(-) diff --git a/www-client/netsurf/netsurf-3.1.recipe b/www-client/netsurf/netsurf-3.1.recipe index 6d4d66c04..5b9e461e7 100644 --- a/www-client/netsurf/netsurf-3.1.recipe +++ b/www-client/netsurf/netsurf-3.1.recipe @@ -47,6 +47,7 @@ BUILD_PREREQUIRES=" cmd:bison cmd:flex cmd:gcc + cmd:git cmd:gperf cmd:make cmd:pkg_config @@ -62,12 +63,14 @@ PATCHES="netsurf-3.1.patchset" BUILD() { - make TARGET=beos PREFIX=$prefix + make TARGET=beos PREFIX=$prefix/ DESTDIR=$appsDir/ \ + NETSURF_BEOS_BIN=netsurf/ NETSURF_BEOS_RESOURCES=netsurf/res/ } INSTALL() { - make TARGET=beos PREFIX=$prefix install + make TARGET=beos PREFIX=$prefix/ DESTDIR=$appsDir/ \ + NETSURF_BEOS_BIN=netsurf/ NETSURF_BEOS_RESOURCES=netsurf/res/ install addAppDeskbarSymlink $appsDir/netsurf/NetSurf NetSurf } diff --git a/www-client/netsurf/patches/netsurf-3.1.patchset b/www-client/netsurf/patches/netsurf-3.1.patchset index a91a3ac35..2943ad429 100644 --- a/www-client/netsurf/patches/netsurf-3.1.patchset +++ b/www-client/netsurf/patches/netsurf-3.1.patchset @@ -1,4 +1,4 @@ -From 74431b243c18aa2e161037a7384dfcef907bb689 Mon Sep 17 00:00:00 2001 +From e461303c7a9f1c6e71ec10e9e0d910e897f493f5 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 9 Jun 2014 21:44:48 +0200 Subject: Fix include path for 3.1 release. @@ -20,3 +20,63 @@ index cd8070e..2483a22 100644 -- 1.8.3.4 + +From e00ad71338b86fde1cecf9b6cfc65676e3d2f153 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Fri, 20 Jun 2014 13:23:22 +0200 +Subject: Use PathFinder to locate resource folder. + +So it can work wherever NetSurf is installed... + +diff --git a/beos/gui.cpp b/beos/gui.cpp +index 365a356..caa6ef4 100644 +--- a/beos/gui.cpp ++++ b/beos/gui.cpp +@@ -37,6 +37,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -79,9 +80,6 @@ extern "C" { + + static void *myrealloc(void *ptr, size_t len, void *pw); + +-/* Where to search for shared resources. Must have trailing / */ +-#define RESPATH "/boot/apps/netsurf/res/" +- + //TODO: use resources + // enable using resources instead of files + #define USE_RESOURCES 1 +@@ -297,7 +295,13 @@ static char *find_resource(char *buf, const char *filename, const char *def) + return buf; + } + +- strcpy(t, RESPATH); ++ ++ BPathFinder f((void*)find_resource); ++ ++ BPath p; ++ f.FindPath(B_FIND_PATH_APPS_DIRECTORY, "netsurf/res/", p); ++ strcpy(t, p.Path()); ++ + strcat(t, filename); + realpath(t, buf); + if (access(buf, R_OK) == 0) +@@ -488,7 +492,10 @@ static bool nslog_stream_configure(FILE *fptr) + + static BPath get_messages_path() + { +- BPath p("/boot/apps/netsurf/res"); ++ BPathFinder f((void*)get_messages_path); ++ ++ BPath p; ++ f.FindPath(B_FIND_PATH_APPS_DIRECTORY, "netsurf/res", p); + // TODO: use Haiku's BLocale stuff + BString lang(getenv("LC_MESSAGES")); + lang.Truncate(2); +-- +1.8.3.4 + From 687a8bdf9579eda98197b329896fbc681ebd43a0 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Fri, 20 Jun 2014 13:41:29 +0000 Subject: [PATCH 2/9] openssl: Add openssl-1.0.1h recipe * The patchsets also fix the root CA location * 1.0.1 isn't binary compat with 1.0.0 compiled applications. Working on a 1.0.0 patchset now --- ...sl-1.0.1g.recipe => openssl-1.0.1h.recipe} | 17 +- .../openssl/patches/openssl-1.0.1e.patchset | 478 ------------------ .../openssl/patches/openssl-1.0.1h.patchset | 102 ++++ 3 files changed, 111 insertions(+), 486 deletions(-) rename dev-libs/openssl/{openssl-1.0.1g.recipe => openssl-1.0.1h.recipe} (87%) delete mode 100644 dev-libs/openssl/patches/openssl-1.0.1e.patchset create mode 100644 dev-libs/openssl/patches/openssl-1.0.1h.patchset diff --git a/dev-libs/openssl/openssl-1.0.1g.recipe b/dev-libs/openssl/openssl-1.0.1h.recipe similarity index 87% rename from dev-libs/openssl/openssl-1.0.1g.recipe rename to dev-libs/openssl/openssl-1.0.1h.recipe index fce0a8dc6..859766d91 100644 --- a/dev-libs/openssl/openssl-1.0.1g.recipe +++ b/dev-libs/openssl/openssl-1.0.1h.recipe @@ -14,23 +14,23 @@ commercial and non-commercial purposes subject to some simple license \ conditions. " HOMEPAGE="http://www.openssl.org/" -SRC_URI="http://www.openssl.org/source/openssl-1.0.1g.tar.gz" -CHECKSUM_SHA256="53cb818c3b90e507a8348f4f5eaedb05d8bfe5358aabb508b7263cc670c3e028" +SRC_URI="http://www.openssl.org/source/openssl-${portVersion}.tar.gz" +CHECKSUM_SHA256="9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093" LICENSE="OpenSSL" COPYRIGHT=" 1995-1998 Eric Young 1998-2013 The OpenSSL Project. " REVISION="1" -ARCHITECTURES="!x86_gcc2 !x86 !x86_64" -SECONDARY_ARCHITECTURES="!x86_gcc2 !x86" +ARCHITECTURES="?x86_gcc2 x86 ?x86_64" +SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86" -PATCHES="openssl-1.0.1e.patchset" +PATCHES="openssl-1.0.1h.patchset" PROVIDES=" - openssl$secondaryArchSuffix = $portVersion compat >= 1.0.0 - lib:libcrypto$secondaryArchSuffix = $portVersion compat >= 1.0.0 - lib:libssl$secondaryArchSuffix = $portVersion compat >= 1.0.0 + openssl$secondaryArchSuffix = $portVersion compat >= 1.0.1 + lib:libcrypto$secondaryArchSuffix = $portVersion compat >= 1.0.1 + lib:libssl$secondaryArchSuffix = $portVersion compat >= 1.0.1 " if [ -z "$secondaryArchSuffix" ]; then PROVIDES="$PROVIDES @@ -42,6 +42,7 @@ fi REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion lib:libz$secondaryArchSuffix >= 1.2.3 + ca_root_certificates " if [ -n "$secondaryArchSuffix" ]; then REQUIRES="$REQUIRES diff --git a/dev-libs/openssl/patches/openssl-1.0.1e.patchset b/dev-libs/openssl/patches/openssl-1.0.1e.patchset deleted file mode 100644 index 2aeb0bca2..000000000 --- a/dev-libs/openssl/patches/openssl-1.0.1e.patchset +++ /dev/null @@ -1,478 +0,0 @@ -From 1e96233956f08910cfc2f288a069c8435c343f06 Mon Sep 17 00:00:00 2001 -From: Adrien Destugues -Date: Mon, 21 Oct 2013 10:01:47 +0200 -Subject: Convert existing patch into patchset format. - - -diff --git a/Configure b/Configure -index 9c803dc..8798a10 100755 ---- a/Configure -+++ b/Configure -@@ -615,6 +615,10 @@ my %table=( - "uClinux-dist","$ENV{'CC'}:\$(CFLAGS)::-D_REENTRANT::\$(LDFLAGS) \$(LDLIBS):BN_LLONG:${no_asm}:$ENV{'LIBSSL_dlfcn'}:linux-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):$ENV{'RANLIB'}::", - "uClinux-dist64","$ENV{'CC'}:\$(CFLAGS)::-D_REENTRANT::\$(LDFLAGS) \$(LDLIBS):SIXTY_FOUR_BIT_LONG:${no_asm}:$ENV{'LIBSSL_dlfcn'}:linux-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):$ENV{'RANLIB'}::", - -+##### Haiku -+"haiku-x86", "gcc:-DL_ENDIAN -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::-lnetwork:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:haiku-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"haiku-x86_64", "gcc:-m64 -DL_ENDIAN -O2 -Wall -DMD32_REG_T=int::-D_REENTRANT::-lnetwork:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:haiku-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", -+ - ); - - my @MK1MF_Builds=qw(VC-WIN64I VC-WIN64A -diff --git a/Makefile.shared b/Makefile.shared -index e753f44..cce510f 100644 ---- a/Makefile.shared -+++ b/Makefile.shared -@@ -594,10 +594,10 @@ symlink.hpux: - symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath symlink.beos: - - # Compatibility targets --link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu --link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu --link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu --symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared: symlink.gnu -+link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared link_o.haiku-shared: link_o.gnu -+link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared link_a.haiku-shared: link_a.gnu -+link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared link_app.haiku-shared: link_app.gnu -+symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared symlink.haiku-shared: symlink.gnu - link_o.bsd-shared: link_o.bsd - link_a.bsd-shared: link_a.bsd - link_app.bsd-shared: link_app.bsd -diff --git a/config b/config -index 88b9bc6..950f3f4 100755 ---- a/config -+++ b/config -@@ -134,6 +134,14 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in - echo "${MACHINE}-dg-dgux"; exit 0 - ;; - -+ Haiku:*:BePC) -+ echo "i586-pc-haiku"; exit 0 -+ ;; -+ -+ Haiku:*:*) -+ echo "${MACHINE}-unknown-haiku"; exit 0 -+ ;; -+ - HI-UX:*) - echo "${MACHINE}-hi-hiux"; exit 0 - ;; -@@ -829,6 +837,9 @@ case "$GUESSOS" in - options="$options no-asm" - fi - ;; -+ i586-*-haiku) OUT="haiku-x86" ;; -+ x86_64-*-haiku) OUT="haiku-x86_64" ;; -+ - # these are all covered by the catchall below - # *-dgux) OUT="dgux" ;; - mips-sony-newsos4) OUT="newsos4-gcc" ;; -diff --git a/doc/apps/cms.pod b/doc/apps/cms.pod -index a09588a..2d19d91 100644 ---- a/doc/apps/cms.pod -+++ b/doc/apps/cms.pod -@@ -450,28 +450,28 @@ remains DER. - - =over 4 - --=item 0 -+=item C<0> - - the operation was completely successfully. - --=item 1 -+=item C<1> - - an error occurred parsing the command options. - --=item 2 -+=item C<2> - - one of the input files could not be read. - --=item 3 -+=item C<3> - - an error occurred creating the CMS file or when reading the MIME - message. - --=item 4 -+=item C<4> - - an error occurred decrypting or verifying the message. - --=item 5 -+=item C<5> - - the message was verified correctly but an error occurred writing out - the signers certificates. -diff --git a/doc/apps/smime.pod b/doc/apps/smime.pod -index e4e89af..72c7b24 100644 ---- a/doc/apps/smime.pod -+++ b/doc/apps/smime.pod -@@ -308,28 +308,28 @@ remains DER. - - =over 4 - --=item 0 -+=item C<0> - - the operation was completely successfully. - --=item 1 -+=item C<1> - - an error occurred parsing the command options. - --=item 2 -+=item C<2> - - one of the input files could not be read. - --=item 3 -+=item C<3> - - an error occurred creating the PKCS#7 file or when reading the MIME - message. - --=item 4 -+=item C<4> - - an error occurred decrypting or verifying the message. - --=item 5 -+=item C<5> - - the message was verified correctly but an error occurred writing out - the signers certificates. -diff --git a/doc/crypto/X509_STORE_CTX_get_error.pod b/doc/crypto/X509_STORE_CTX_get_error.pod -index a883f6c..60e8332 100644 ---- a/doc/crypto/X509_STORE_CTX_get_error.pod -+++ b/doc/crypto/X509_STORE_CTX_get_error.pod -@@ -278,6 +278,8 @@ happen if extended CRL checking is enabled. - an application specific error. This will never be returned unless explicitly - set by an application. - -+=back -+ - =head1 NOTES - - The above functions should be used instead of directly referencing the fields -diff --git a/doc/ssl/SSL_COMP_add_compression_method.pod b/doc/ssl/SSL_COMP_add_compression_method.pod -index 42fa66b..80175a3 100644 ---- a/doc/ssl/SSL_COMP_add_compression_method.pod -+++ b/doc/ssl/SSL_COMP_add_compression_method.pod -@@ -53,11 +53,11 @@ SSL_COMP_add_compression_method() may return the following values: - - =over 4 - --=item 0 -+=item C<0> - - The operation succeeded. - --=item 1 -+=item C<1> - - The operation failed. Check the error queue to find out the reason. - -diff --git a/doc/ssl/SSL_CTX_add_session.pod b/doc/ssl/SSL_CTX_add_session.pod -index 82676b2..fd927f8 100644 ---- a/doc/ssl/SSL_CTX_add_session.pod -+++ b/doc/ssl/SSL_CTX_add_session.pod -@@ -52,13 +52,13 @@ The following values are returned by all functions: - - =over 4 - --=item 0 -+=item C<0> - - The operation failed. In case of the add operation, it was tried to add - the same (identical) session twice. In case of the remove operation, the - session was not found in the cache. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff --git a/doc/ssl/SSL_CTX_load_verify_locations.pod b/doc/ssl/SSL_CTX_load_verify_locations.pod -index 84a799f..de01065 100644 ---- a/doc/ssl/SSL_CTX_load_verify_locations.pod -+++ b/doc/ssl/SSL_CTX_load_verify_locations.pod -@@ -100,13 +100,13 @@ The following return values can occur: - - =over 4 - --=item 0 -+=item C<0> - - The operation failed because B and B are NULL or the - processing at one of the locations specified failed. Check the error - stack to find out the reason. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff --git a/doc/ssl/SSL_CTX_set_client_CA_list.pod b/doc/ssl/SSL_CTX_set_client_CA_list.pod -index 632b556..04d0a3c 100644 ---- a/doc/ssl/SSL_CTX_set_client_CA_list.pod -+++ b/doc/ssl/SSL_CTX_set_client_CA_list.pod -@@ -66,11 +66,11 @@ values: - - =over 4 - --=item 1 -+=item C<1> - - The operation succeeded. - --=item 0 -+=item C<0> - - A failure while manipulating the STACK_OF(X509_NAME) object occurred or - the X509_NAME could not be extracted from B. Check the error stack -diff --git a/doc/ssl/SSL_CTX_set_session_id_context.pod b/doc/ssl/SSL_CTX_set_session_id_context.pod -index 58fc685..ed0a81c 100644 ---- a/doc/ssl/SSL_CTX_set_session_id_context.pod -+++ b/doc/ssl/SSL_CTX_set_session_id_context.pod -@@ -64,13 +64,13 @@ return the following values: - - =over 4 - --=item 0 -+=item C<0> - - The length B of the session id context B exceeded - the maximum allowed length of B. The error - is logged to the error stack. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff --git a/doc/ssl/SSL_CTX_set_ssl_version.pod b/doc/ssl/SSL_CTX_set_ssl_version.pod -index 254f2b4..5ea8f0d 100644 ---- a/doc/ssl/SSL_CTX_set_ssl_version.pod -+++ b/doc/ssl/SSL_CTX_set_ssl_version.pod -@@ -42,11 +42,11 @@ and SSL_set_ssl_method(): - - =over 4 - --=item 0 -+=item C<0> - - The new choice failed, check the error stack to find out the reason. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff --git a/doc/ssl/SSL_CTX_use_psk_identity_hint.pod b/doc/ssl/SSL_CTX_use_psk_identity_hint.pod -index b80e25b..ba5c23f 100644 ---- a/doc/ssl/SSL_CTX_use_psk_identity_hint.pod -+++ b/doc/ssl/SSL_CTX_use_psk_identity_hint.pod -@@ -81,6 +81,8 @@ SSL_CTX_use_psk_identity_hint() and SSL_use_psk_identity_hint() return - - Return values from the server callback are interpreted as follows: - -+=over -+ - =item > 0 - - PSK identity was found and the server callback has provided the PSK -@@ -94,9 +96,11 @@ data to B and return the length of the random data, so the - connection will fail with decryption_error before it will be finished - completely. - --=item 0 -+=item C<0> - - PSK identity was not found. An "unknown_psk_identity" alert message - will be sent and the connection setup fails. - -+=back -+ - =cut -diff --git a/doc/ssl/SSL_accept.pod b/doc/ssl/SSL_accept.pod -index cc724c0..44dbee6 100644 ---- a/doc/ssl/SSL_accept.pod -+++ b/doc/ssl/SSL_accept.pod -@@ -44,12 +44,12 @@ The following return values can occur: - - =over 4 - --=item 1 -+=item C<1> - - The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been - established. - --=item 0 -+=item C<0> - - The TLS/SSL handshake was not successful but was shut down controlled and - by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the -diff --git a/doc/ssl/SSL_clear.pod b/doc/ssl/SSL_clear.pod -index d4df1bf..2da0b02 100644 ---- a/doc/ssl/SSL_clear.pod -+++ b/doc/ssl/SSL_clear.pod -@@ -56,12 +56,12 @@ The following return values can occur: - - =over 4 - --=item 0 -+=item C<0> - - The SSL_clear() operation could not be performed. Check the error stack to - find out the reason. - --=item 1 -+=item C<1> - - The SSL_clear() operation was successful. - -diff --git a/doc/ssl/SSL_connect.pod b/doc/ssl/SSL_connect.pod -index cc56ebb..3257f71 100644 ---- a/doc/ssl/SSL_connect.pod -+++ b/doc/ssl/SSL_connect.pod -@@ -41,12 +41,12 @@ The following return values can occur: - - =over 4 - --=item 1 -+=item C<1> - - The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been - established. - --=item 0 -+=item C<0> - - The TLS/SSL handshake was not successful but was shut down controlled and - by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the -diff --git a/doc/ssl/SSL_do_handshake.pod b/doc/ssl/SSL_do_handshake.pod -index 2435764..a0afc27 100644 ---- a/doc/ssl/SSL_do_handshake.pod -+++ b/doc/ssl/SSL_do_handshake.pod -@@ -45,12 +45,12 @@ The following return values can occur: - - =over 4 - --=item 1 -+=item C<1> - - The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been - established. - --=item 0 -+=item C<0> - - The TLS/SSL handshake was not successful but was shut down controlled and - by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the -diff --git a/doc/ssl/SSL_read.pod b/doc/ssl/SSL_read.pod -index 7038cd2..3982b81 100644 ---- a/doc/ssl/SSL_read.pod -+++ b/doc/ssl/SSL_read.pod -@@ -86,7 +86,7 @@ The following return values can occur: - The read operation was successful; the return value is the number of - bytes actually read from the TLS/SSL connection. - --=item 0 -+=item C<0> - - The read operation was not successful. The reason may either be a clean - shutdown due to a "close notify" alert sent by the peer (in which case -diff --git a/doc/ssl/SSL_session_reused.pod b/doc/ssl/SSL_session_reused.pod -index da7d062..033d54c 100644 ---- a/doc/ssl/SSL_session_reused.pod -+++ b/doc/ssl/SSL_session_reused.pod -@@ -27,11 +27,11 @@ The following return values can occur: - - =over 4 - --=item 0 -+=item C<0> - - A new session was negotiated. - --=item 1 -+=item C<1> - - A session was reused. - -diff --git a/doc/ssl/SSL_set_fd.pod b/doc/ssl/SSL_set_fd.pod -index 7029112..59e1b2b 100644 ---- a/doc/ssl/SSL_set_fd.pod -+++ b/doc/ssl/SSL_set_fd.pod -@@ -35,11 +35,11 @@ The following return values can occur: - - =over 4 - --=item 0 -+=item C<0> - - The operation failed. Check the error stack to find out why. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff --git a/doc/ssl/SSL_set_session.pod b/doc/ssl/SSL_set_session.pod -index 5f54714..d35e6d3 100644 ---- a/doc/ssl/SSL_set_session.pod -+++ b/doc/ssl/SSL_set_session.pod -@@ -37,11 +37,11 @@ The following return values can occur: - - =over 4 - --=item 0 -+=item C<0> - - The operation failed; check the error stack to find out the reason. - --=item 1 -+=item C<1> - - The operation succeeded. - -diff --git a/doc/ssl/SSL_shutdown.pod b/doc/ssl/SSL_shutdown.pod -index 89911ac..f863812 100644 ---- a/doc/ssl/SSL_shutdown.pod -+++ b/doc/ssl/SSL_shutdown.pod -@@ -92,12 +92,12 @@ The following return values can occur: - - =over 4 - --=item 1 -+=item C<1> - - The shutdown was successfully completed. The "close notify" alert was sent - and the peer's "close notify" alert was received. - --=item 0 -+=item C<0> - - The shutdown is not yet finished. Call SSL_shutdown() for a second time, - if a bidirectional shutdown shall be performed. -diff --git a/doc/ssl/SSL_write.pod b/doc/ssl/SSL_write.pod -index e013c12..30f9e2b 100644 ---- a/doc/ssl/SSL_write.pod -+++ b/doc/ssl/SSL_write.pod -@@ -79,7 +79,7 @@ The following return values can occur: - The write operation was successful, the return value is the number of - bytes actually written to the TLS/SSL connection. - --=item 0 -+=item C<0> - - The write operation was not successful. Probably the underlying connection - was closed. Call SSL_get_error() with the return value B to find out, --- -1.8.3.4 - diff --git a/dev-libs/openssl/patches/openssl-1.0.1h.patchset b/dev-libs/openssl/patches/openssl-1.0.1h.patchset new file mode 100644 index 000000000..e2db3e4a1 --- /dev/null +++ b/dev-libs/openssl/patches/openssl-1.0.1h.patchset @@ -0,0 +1,102 @@ +From ce6f8df79f78f6c533f99c44b86850c4f76a84e2 Mon Sep 17 00:00:00 2001 +From: Alexander von Gluck IV +Date: Wed, 18 Jun 2014 02:37:21 +0000 +Subject: [PATCH 1/2] Haiku: build fixes + +--- + Configure | 4 ++++ + Makefile.shared | 8 ++++---- + config | 11 +++++++++++ + 3 files changed, 19 insertions(+), 4 deletions(-) + +diff --git a/Configure b/Configure +index de78469..047ce37 100755 +--- a/Configure ++++ b/Configure +@@ -440,6 +440,10 @@ my %table=( + "beos-x86-r5", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lnet:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC -DPIC:-shared:.so", + "beos-x86-bone", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lbind -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC:-shared:.so", + ++##### Haiku ++"haiku-x86", "gcc:-DL_ENDIAN -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::-lnetwork:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:haiku-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"haiku-x86_64", "gcc:-m64 -DL_ENDIAN -O2 -Wall -DMD32_REG_T=int::-D_REENTRANT::-lnetwork:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:haiku-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", ++ + #### SCO/Caldera targets. + # + # Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc. +diff --git a/Makefile.shared b/Makefile.shared +index e753f44..cce510f 100644 +--- a/Makefile.shared ++++ b/Makefile.shared +@@ -594,10 +594,10 @@ symlink.hpux: + symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath symlink.beos: + + # Compatibility targets +-link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu +-link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu +-link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu +-symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared: symlink.gnu ++link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared link_o.haiku-shared: link_o.gnu ++link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared link_a.haiku-shared: link_a.gnu ++link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared link_app.haiku-shared: link_app.gnu ++symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared symlink.haiku-shared: symlink.gnu + link_o.bsd-shared: link_o.bsd + link_a.bsd-shared: link_a.bsd + link_app.bsd-shared: link_app.bsd +diff --git a/config b/config +index 41fa2a6..f390fc2 100755 +--- a/config ++++ b/config +@@ -134,6 +134,14 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in + echo "${MACHINE}-dg-dgux"; exit 0 + ;; + ++ Haiku:*:BePC) ++ echo "i586-pc-haiku"; exit 0 ++ ;; ++ ++ Haiku:*:*) ++ echo "${MACHINE}-unknown-haiku"; exit 0 ++ ;; ++ + HI-UX:*) + echo "${MACHINE}-hi-hiux"; exit 0 + ;; +@@ -829,6 +837,9 @@ case "$GUESSOS" in + options="$options no-asm" + fi + ;; ++ i586-*-haiku) OUT="haiku-x86" ;; ++ x86_64-*-haiku) OUT="haiku-x86_64" ;; ++ + # these are all covered by the catchall below + # *-dgux) OUT="dgux" ;; + mips-sony-newsos4) OUT="newsos4-gcc" ;; +-- +1.8.3.4 + +From df9dd1aa2bf9d40613e95c5ae8fe9e5dc3e8c68f Mon Sep 17 00:00:00 2001 +From: Alexander von Gluck IV +Date: Wed, 18 Jun 2014 02:39:12 +0000 +Subject: [PATCH 2/2] Haiku: Modify default Root CA filename + +--- + crypto/cryptlib.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/crypto/cryptlib.h b/crypto/cryptlib.h +index d26f963..96dfd07 100644 +--- a/crypto/cryptlib.h ++++ b/crypto/cryptlib.h +@@ -82,7 +82,7 @@ extern "C" { + #ifndef OPENSSL_SYS_VMS + #define X509_CERT_AREA OPENSSLDIR + #define X509_CERT_DIR OPENSSLDIR "/certs" +-#define X509_CERT_FILE OPENSSLDIR "/cert.pem" ++#define X509_CERT_FILE OPENSSLDIR "/CARootCertificates.pem" + #define X509_PRIVATE_DIR OPENSSLDIR "/private" + #else + #define X509_CERT_AREA "SSLROOT:[000000]" +-- +1.8.3.4 + From 1ba84f6eb1807ddedeec0f575bce2d20f57e6c3d Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Fri, 20 Jun 2014 14:18:36 +0000 Subject: [PATCH 3/9] Revert "openssl: Add openssl-1.0.1h recipe" This reverts commit 687a8bdf9579eda98197b329896fbc681ebd43a0. PulkoMandy pointed out that the older 1.0.1 recipe was used on x86_64 --- ...sl-1.0.1h.recipe => openssl-1.0.1g.recipe} | 17 +- .../openssl/patches/openssl-1.0.1e.patchset | 478 ++++++++++++++++++ .../openssl/patches/openssl-1.0.1h.patchset | 102 ---- 3 files changed, 486 insertions(+), 111 deletions(-) rename dev-libs/openssl/{openssl-1.0.1h.recipe => openssl-1.0.1g.recipe} (87%) create mode 100644 dev-libs/openssl/patches/openssl-1.0.1e.patchset delete mode 100644 dev-libs/openssl/patches/openssl-1.0.1h.patchset diff --git a/dev-libs/openssl/openssl-1.0.1h.recipe b/dev-libs/openssl/openssl-1.0.1g.recipe similarity index 87% rename from dev-libs/openssl/openssl-1.0.1h.recipe rename to dev-libs/openssl/openssl-1.0.1g.recipe index 859766d91..fce0a8dc6 100644 --- a/dev-libs/openssl/openssl-1.0.1h.recipe +++ b/dev-libs/openssl/openssl-1.0.1g.recipe @@ -14,23 +14,23 @@ commercial and non-commercial purposes subject to some simple license \ conditions. " HOMEPAGE="http://www.openssl.org/" -SRC_URI="http://www.openssl.org/source/openssl-${portVersion}.tar.gz" -CHECKSUM_SHA256="9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093" +SRC_URI="http://www.openssl.org/source/openssl-1.0.1g.tar.gz" +CHECKSUM_SHA256="53cb818c3b90e507a8348f4f5eaedb05d8bfe5358aabb508b7263cc670c3e028" LICENSE="OpenSSL" COPYRIGHT=" 1995-1998 Eric Young 1998-2013 The OpenSSL Project. " REVISION="1" -ARCHITECTURES="?x86_gcc2 x86 ?x86_64" -SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86" +ARCHITECTURES="!x86_gcc2 !x86 !x86_64" +SECONDARY_ARCHITECTURES="!x86_gcc2 !x86" -PATCHES="openssl-1.0.1h.patchset" +PATCHES="openssl-1.0.1e.patchset" PROVIDES=" - openssl$secondaryArchSuffix = $portVersion compat >= 1.0.1 - lib:libcrypto$secondaryArchSuffix = $portVersion compat >= 1.0.1 - lib:libssl$secondaryArchSuffix = $portVersion compat >= 1.0.1 + openssl$secondaryArchSuffix = $portVersion compat >= 1.0.0 + lib:libcrypto$secondaryArchSuffix = $portVersion compat >= 1.0.0 + lib:libssl$secondaryArchSuffix = $portVersion compat >= 1.0.0 " if [ -z "$secondaryArchSuffix" ]; then PROVIDES="$PROVIDES @@ -42,7 +42,6 @@ fi REQUIRES=" haiku$secondaryArchSuffix >= $haikuVersion lib:libz$secondaryArchSuffix >= 1.2.3 - ca_root_certificates " if [ -n "$secondaryArchSuffix" ]; then REQUIRES="$REQUIRES diff --git a/dev-libs/openssl/patches/openssl-1.0.1e.patchset b/dev-libs/openssl/patches/openssl-1.0.1e.patchset new file mode 100644 index 000000000..2aeb0bca2 --- /dev/null +++ b/dev-libs/openssl/patches/openssl-1.0.1e.patchset @@ -0,0 +1,478 @@ +From 1e96233956f08910cfc2f288a069c8435c343f06 Mon Sep 17 00:00:00 2001 +From: Adrien Destugues +Date: Mon, 21 Oct 2013 10:01:47 +0200 +Subject: Convert existing patch into patchset format. + + +diff --git a/Configure b/Configure +index 9c803dc..8798a10 100755 +--- a/Configure ++++ b/Configure +@@ -615,6 +615,10 @@ my %table=( + "uClinux-dist","$ENV{'CC'}:\$(CFLAGS)::-D_REENTRANT::\$(LDFLAGS) \$(LDLIBS):BN_LLONG:${no_asm}:$ENV{'LIBSSL_dlfcn'}:linux-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):$ENV{'RANLIB'}::", + "uClinux-dist64","$ENV{'CC'}:\$(CFLAGS)::-D_REENTRANT::\$(LDFLAGS) \$(LDLIBS):SIXTY_FOUR_BIT_LONG:${no_asm}:$ENV{'LIBSSL_dlfcn'}:linux-shared:-fPIC:-shared:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):$ENV{'RANLIB'}::", + ++##### Haiku ++"haiku-x86", "gcc:-DL_ENDIAN -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::-lnetwork:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:haiku-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"haiku-x86_64", "gcc:-m64 -DL_ENDIAN -O2 -Wall -DMD32_REG_T=int::-D_REENTRANT::-lnetwork:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:haiku-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", ++ + ); + + my @MK1MF_Builds=qw(VC-WIN64I VC-WIN64A +diff --git a/Makefile.shared b/Makefile.shared +index e753f44..cce510f 100644 +--- a/Makefile.shared ++++ b/Makefile.shared +@@ -594,10 +594,10 @@ symlink.hpux: + symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath symlink.beos: + + # Compatibility targets +-link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu +-link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu +-link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu +-symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared: symlink.gnu ++link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared link_o.haiku-shared: link_o.gnu ++link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared link_a.haiku-shared: link_a.gnu ++link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared link_app.haiku-shared: link_app.gnu ++symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared symlink.haiku-shared: symlink.gnu + link_o.bsd-shared: link_o.bsd + link_a.bsd-shared: link_a.bsd + link_app.bsd-shared: link_app.bsd +diff --git a/config b/config +index 88b9bc6..950f3f4 100755 +--- a/config ++++ b/config +@@ -134,6 +134,14 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in + echo "${MACHINE}-dg-dgux"; exit 0 + ;; + ++ Haiku:*:BePC) ++ echo "i586-pc-haiku"; exit 0 ++ ;; ++ ++ Haiku:*:*) ++ echo "${MACHINE}-unknown-haiku"; exit 0 ++ ;; ++ + HI-UX:*) + echo "${MACHINE}-hi-hiux"; exit 0 + ;; +@@ -829,6 +837,9 @@ case "$GUESSOS" in + options="$options no-asm" + fi + ;; ++ i586-*-haiku) OUT="haiku-x86" ;; ++ x86_64-*-haiku) OUT="haiku-x86_64" ;; ++ + # these are all covered by the catchall below + # *-dgux) OUT="dgux" ;; + mips-sony-newsos4) OUT="newsos4-gcc" ;; +diff --git a/doc/apps/cms.pod b/doc/apps/cms.pod +index a09588a..2d19d91 100644 +--- a/doc/apps/cms.pod ++++ b/doc/apps/cms.pod +@@ -450,28 +450,28 @@ remains DER. + + =over 4 + +-=item 0 ++=item C<0> + + the operation was completely successfully. + +-=item 1 ++=item C<1> + + an error occurred parsing the command options. + +-=item 2 ++=item C<2> + + one of the input files could not be read. + +-=item 3 ++=item C<3> + + an error occurred creating the CMS file or when reading the MIME + message. + +-=item 4 ++=item C<4> + + an error occurred decrypting or verifying the message. + +-=item 5 ++=item C<5> + + the message was verified correctly but an error occurred writing out + the signers certificates. +diff --git a/doc/apps/smime.pod b/doc/apps/smime.pod +index e4e89af..72c7b24 100644 +--- a/doc/apps/smime.pod ++++ b/doc/apps/smime.pod +@@ -308,28 +308,28 @@ remains DER. + + =over 4 + +-=item 0 ++=item C<0> + + the operation was completely successfully. + +-=item 1 ++=item C<1> + + an error occurred parsing the command options. + +-=item 2 ++=item C<2> + + one of the input files could not be read. + +-=item 3 ++=item C<3> + + an error occurred creating the PKCS#7 file or when reading the MIME + message. + +-=item 4 ++=item C<4> + + an error occurred decrypting or verifying the message. + +-=item 5 ++=item C<5> + + the message was verified correctly but an error occurred writing out + the signers certificates. +diff --git a/doc/crypto/X509_STORE_CTX_get_error.pod b/doc/crypto/X509_STORE_CTX_get_error.pod +index a883f6c..60e8332 100644 +--- a/doc/crypto/X509_STORE_CTX_get_error.pod ++++ b/doc/crypto/X509_STORE_CTX_get_error.pod +@@ -278,6 +278,8 @@ happen if extended CRL checking is enabled. + an application specific error. This will never be returned unless explicitly + set by an application. + ++=back ++ + =head1 NOTES + + The above functions should be used instead of directly referencing the fields +diff --git a/doc/ssl/SSL_COMP_add_compression_method.pod b/doc/ssl/SSL_COMP_add_compression_method.pod +index 42fa66b..80175a3 100644 +--- a/doc/ssl/SSL_COMP_add_compression_method.pod ++++ b/doc/ssl/SSL_COMP_add_compression_method.pod +@@ -53,11 +53,11 @@ SSL_COMP_add_compression_method() may return the following values: + + =over 4 + +-=item 0 ++=item C<0> + + The operation succeeded. + +-=item 1 ++=item C<1> + + The operation failed. Check the error queue to find out the reason. + +diff --git a/doc/ssl/SSL_CTX_add_session.pod b/doc/ssl/SSL_CTX_add_session.pod +index 82676b2..fd927f8 100644 +--- a/doc/ssl/SSL_CTX_add_session.pod ++++ b/doc/ssl/SSL_CTX_add_session.pod +@@ -52,13 +52,13 @@ The following values are returned by all functions: + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed. In case of the add operation, it was tried to add + the same (identical) session twice. In case of the remove operation, the + session was not found in the cache. + +-=item 1 ++=item C<1> + + The operation succeeded. + +diff --git a/doc/ssl/SSL_CTX_load_verify_locations.pod b/doc/ssl/SSL_CTX_load_verify_locations.pod +index 84a799f..de01065 100644 +--- a/doc/ssl/SSL_CTX_load_verify_locations.pod ++++ b/doc/ssl/SSL_CTX_load_verify_locations.pod +@@ -100,13 +100,13 @@ The following return values can occur: + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed because B and B are NULL or the + processing at one of the locations specified failed. Check the error + stack to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +diff --git a/doc/ssl/SSL_CTX_set_client_CA_list.pod b/doc/ssl/SSL_CTX_set_client_CA_list.pod +index 632b556..04d0a3c 100644 +--- a/doc/ssl/SSL_CTX_set_client_CA_list.pod ++++ b/doc/ssl/SSL_CTX_set_client_CA_list.pod +@@ -66,11 +66,11 @@ values: + + =over 4 + +-=item 1 ++=item C<1> + + The operation succeeded. + +-=item 0 ++=item C<0> + + A failure while manipulating the STACK_OF(X509_NAME) object occurred or + the X509_NAME could not be extracted from B. Check the error stack +diff --git a/doc/ssl/SSL_CTX_set_session_id_context.pod b/doc/ssl/SSL_CTX_set_session_id_context.pod +index 58fc685..ed0a81c 100644 +--- a/doc/ssl/SSL_CTX_set_session_id_context.pod ++++ b/doc/ssl/SSL_CTX_set_session_id_context.pod +@@ -64,13 +64,13 @@ return the following values: + + =over 4 + +-=item 0 ++=item C<0> + + The length B of the session id context B exceeded + the maximum allowed length of B. The error + is logged to the error stack. + +-=item 1 ++=item C<1> + + The operation succeeded. + +diff --git a/doc/ssl/SSL_CTX_set_ssl_version.pod b/doc/ssl/SSL_CTX_set_ssl_version.pod +index 254f2b4..5ea8f0d 100644 +--- a/doc/ssl/SSL_CTX_set_ssl_version.pod ++++ b/doc/ssl/SSL_CTX_set_ssl_version.pod +@@ -42,11 +42,11 @@ and SSL_set_ssl_method(): + + =over 4 + +-=item 0 ++=item C<0> + + The new choice failed, check the error stack to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +diff --git a/doc/ssl/SSL_CTX_use_psk_identity_hint.pod b/doc/ssl/SSL_CTX_use_psk_identity_hint.pod +index b80e25b..ba5c23f 100644 +--- a/doc/ssl/SSL_CTX_use_psk_identity_hint.pod ++++ b/doc/ssl/SSL_CTX_use_psk_identity_hint.pod +@@ -81,6 +81,8 @@ SSL_CTX_use_psk_identity_hint() and SSL_use_psk_identity_hint() return + + Return values from the server callback are interpreted as follows: + ++=over ++ + =item > 0 + + PSK identity was found and the server callback has provided the PSK +@@ -94,9 +96,11 @@ data to B and return the length of the random data, so the + connection will fail with decryption_error before it will be finished + completely. + +-=item 0 ++=item C<0> + + PSK identity was not found. An "unknown_psk_identity" alert message + will be sent and the connection setup fails. + ++=back ++ + =cut +diff --git a/doc/ssl/SSL_accept.pod b/doc/ssl/SSL_accept.pod +index cc724c0..44dbee6 100644 +--- a/doc/ssl/SSL_accept.pod ++++ b/doc/ssl/SSL_accept.pod +@@ -44,12 +44,12 @@ The following return values can occur: + + =over 4 + +-=item 1 ++=item C<1> + + The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been + established. + +-=item 0 ++=item C<0> + + The TLS/SSL handshake was not successful but was shut down controlled and + by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the +diff --git a/doc/ssl/SSL_clear.pod b/doc/ssl/SSL_clear.pod +index d4df1bf..2da0b02 100644 +--- a/doc/ssl/SSL_clear.pod ++++ b/doc/ssl/SSL_clear.pod +@@ -56,12 +56,12 @@ The following return values can occur: + + =over 4 + +-=item 0 ++=item C<0> + + The SSL_clear() operation could not be performed. Check the error stack to + find out the reason. + +-=item 1 ++=item C<1> + + The SSL_clear() operation was successful. + +diff --git a/doc/ssl/SSL_connect.pod b/doc/ssl/SSL_connect.pod +index cc56ebb..3257f71 100644 +--- a/doc/ssl/SSL_connect.pod ++++ b/doc/ssl/SSL_connect.pod +@@ -41,12 +41,12 @@ The following return values can occur: + + =over 4 + +-=item 1 ++=item C<1> + + The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been + established. + +-=item 0 ++=item C<0> + + The TLS/SSL handshake was not successful but was shut down controlled and + by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the +diff --git a/doc/ssl/SSL_do_handshake.pod b/doc/ssl/SSL_do_handshake.pod +index 2435764..a0afc27 100644 +--- a/doc/ssl/SSL_do_handshake.pod ++++ b/doc/ssl/SSL_do_handshake.pod +@@ -45,12 +45,12 @@ The following return values can occur: + + =over 4 + +-=item 1 ++=item C<1> + + The TLS/SSL handshake was successfully completed, a TLS/SSL connection has been + established. + +-=item 0 ++=item C<0> + + The TLS/SSL handshake was not successful but was shut down controlled and + by the specifications of the TLS/SSL protocol. Call SSL_get_error() with the +diff --git a/doc/ssl/SSL_read.pod b/doc/ssl/SSL_read.pod +index 7038cd2..3982b81 100644 +--- a/doc/ssl/SSL_read.pod ++++ b/doc/ssl/SSL_read.pod +@@ -86,7 +86,7 @@ The following return values can occur: + The read operation was successful; the return value is the number of + bytes actually read from the TLS/SSL connection. + +-=item 0 ++=item C<0> + + The read operation was not successful. The reason may either be a clean + shutdown due to a "close notify" alert sent by the peer (in which case +diff --git a/doc/ssl/SSL_session_reused.pod b/doc/ssl/SSL_session_reused.pod +index da7d062..033d54c 100644 +--- a/doc/ssl/SSL_session_reused.pod ++++ b/doc/ssl/SSL_session_reused.pod +@@ -27,11 +27,11 @@ The following return values can occur: + + =over 4 + +-=item 0 ++=item C<0> + + A new session was negotiated. + +-=item 1 ++=item C<1> + + A session was reused. + +diff --git a/doc/ssl/SSL_set_fd.pod b/doc/ssl/SSL_set_fd.pod +index 7029112..59e1b2b 100644 +--- a/doc/ssl/SSL_set_fd.pod ++++ b/doc/ssl/SSL_set_fd.pod +@@ -35,11 +35,11 @@ The following return values can occur: + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed. Check the error stack to find out why. + +-=item 1 ++=item C<1> + + The operation succeeded. + +diff --git a/doc/ssl/SSL_set_session.pod b/doc/ssl/SSL_set_session.pod +index 5f54714..d35e6d3 100644 +--- a/doc/ssl/SSL_set_session.pod ++++ b/doc/ssl/SSL_set_session.pod +@@ -37,11 +37,11 @@ The following return values can occur: + + =over 4 + +-=item 0 ++=item C<0> + + The operation failed; check the error stack to find out the reason. + +-=item 1 ++=item C<1> + + The operation succeeded. + +diff --git a/doc/ssl/SSL_shutdown.pod b/doc/ssl/SSL_shutdown.pod +index 89911ac..f863812 100644 +--- a/doc/ssl/SSL_shutdown.pod ++++ b/doc/ssl/SSL_shutdown.pod +@@ -92,12 +92,12 @@ The following return values can occur: + + =over 4 + +-=item 1 ++=item C<1> + + The shutdown was successfully completed. The "close notify" alert was sent + and the peer's "close notify" alert was received. + +-=item 0 ++=item C<0> + + The shutdown is not yet finished. Call SSL_shutdown() for a second time, + if a bidirectional shutdown shall be performed. +diff --git a/doc/ssl/SSL_write.pod b/doc/ssl/SSL_write.pod +index e013c12..30f9e2b 100644 +--- a/doc/ssl/SSL_write.pod ++++ b/doc/ssl/SSL_write.pod +@@ -79,7 +79,7 @@ The following return values can occur: + The write operation was successful, the return value is the number of + bytes actually written to the TLS/SSL connection. + +-=item 0 ++=item C<0> + + The write operation was not successful. Probably the underlying connection + was closed. Call SSL_get_error() with the return value B to find out, +-- +1.8.3.4 + diff --git a/dev-libs/openssl/patches/openssl-1.0.1h.patchset b/dev-libs/openssl/patches/openssl-1.0.1h.patchset deleted file mode 100644 index e2db3e4a1..000000000 --- a/dev-libs/openssl/patches/openssl-1.0.1h.patchset +++ /dev/null @@ -1,102 +0,0 @@ -From ce6f8df79f78f6c533f99c44b86850c4f76a84e2 Mon Sep 17 00:00:00 2001 -From: Alexander von Gluck IV -Date: Wed, 18 Jun 2014 02:37:21 +0000 -Subject: [PATCH 1/2] Haiku: build fixes - ---- - Configure | 4 ++++ - Makefile.shared | 8 ++++---- - config | 11 +++++++++++ - 3 files changed, 19 insertions(+), 4 deletions(-) - -diff --git a/Configure b/Configure -index de78469..047ce37 100755 ---- a/Configure -+++ b/Configure -@@ -440,6 +440,10 @@ my %table=( - "beos-x86-r5", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lnet:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC -DPIC:-shared:.so", - "beos-x86-bone", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lbind -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC:-shared:.so", - -+##### Haiku -+"haiku-x86", "gcc:-DL_ENDIAN -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::-lnetwork:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:haiku-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"haiku-x86_64", "gcc:-m64 -DL_ENDIAN -O2 -Wall -DMD32_REG_T=int::-D_REENTRANT::-lnetwork:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:haiku-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", -+ - #### SCO/Caldera targets. - # - # Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc. -diff --git a/Makefile.shared b/Makefile.shared -index e753f44..cce510f 100644 ---- a/Makefile.shared -+++ b/Makefile.shared -@@ -594,10 +594,10 @@ symlink.hpux: - symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath symlink.beos: - - # Compatibility targets --link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu --link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu --link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu --symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared: symlink.gnu -+link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared link_o.haiku-shared: link_o.gnu -+link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared link_a.haiku-shared: link_a.gnu -+link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared link_app.haiku-shared: link_app.gnu -+symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared symlink.haiku-shared: symlink.gnu - link_o.bsd-shared: link_o.bsd - link_a.bsd-shared: link_a.bsd - link_app.bsd-shared: link_app.bsd -diff --git a/config b/config -index 41fa2a6..f390fc2 100755 ---- a/config -+++ b/config -@@ -134,6 +134,14 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in - echo "${MACHINE}-dg-dgux"; exit 0 - ;; - -+ Haiku:*:BePC) -+ echo "i586-pc-haiku"; exit 0 -+ ;; -+ -+ Haiku:*:*) -+ echo "${MACHINE}-unknown-haiku"; exit 0 -+ ;; -+ - HI-UX:*) - echo "${MACHINE}-hi-hiux"; exit 0 - ;; -@@ -829,6 +837,9 @@ case "$GUESSOS" in - options="$options no-asm" - fi - ;; -+ i586-*-haiku) OUT="haiku-x86" ;; -+ x86_64-*-haiku) OUT="haiku-x86_64" ;; -+ - # these are all covered by the catchall below - # *-dgux) OUT="dgux" ;; - mips-sony-newsos4) OUT="newsos4-gcc" ;; --- -1.8.3.4 - -From df9dd1aa2bf9d40613e95c5ae8fe9e5dc3e8c68f Mon Sep 17 00:00:00 2001 -From: Alexander von Gluck IV -Date: Wed, 18 Jun 2014 02:39:12 +0000 -Subject: [PATCH 2/2] Haiku: Modify default Root CA filename - ---- - crypto/cryptlib.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/crypto/cryptlib.h b/crypto/cryptlib.h -index d26f963..96dfd07 100644 ---- a/crypto/cryptlib.h -+++ b/crypto/cryptlib.h -@@ -82,7 +82,7 @@ extern "C" { - #ifndef OPENSSL_SYS_VMS - #define X509_CERT_AREA OPENSSLDIR - #define X509_CERT_DIR OPENSSLDIR "/certs" --#define X509_CERT_FILE OPENSSLDIR "/cert.pem" -+#define X509_CERT_FILE OPENSSLDIR "/CARootCertificates.pem" - #define X509_PRIVATE_DIR OPENSSLDIR "/private" - #else - #define X509_CERT_AREA "SSLROOT:[000000]" --- -1.8.3.4 - From c843f40e2738e6075de8e994a4f8dd25e5b54b79 Mon Sep 17 00:00:00 2001 From: Alexander von Gluck IV Date: Fri, 20 Jun 2014 14:21:11 +0000 Subject: [PATCH 4/9] openssl: Add openssl-1.0.1h recipe --- dev-libs/openssl/openssl-1.0.1h.recipe | 121 ++++++++++++++++++ .../openssl/patches/openssl-1.0.1h.patchset | 102 +++++++++++++++ 2 files changed, 223 insertions(+) create mode 100644 dev-libs/openssl/openssl-1.0.1h.recipe create mode 100644 dev-libs/openssl/patches/openssl-1.0.1h.patchset diff --git a/dev-libs/openssl/openssl-1.0.1h.recipe b/dev-libs/openssl/openssl-1.0.1h.recipe new file mode 100644 index 000000000..859766d91 --- /dev/null +++ b/dev-libs/openssl/openssl-1.0.1h.recipe @@ -0,0 +1,121 @@ +SUMMARY="Full-strength general purpose cryptography library (with SSL/TLS)" +DESCRIPTION=" +The OpenSSL Project is a collaborative effort to develop a robust, \ +commercial-grade, full-featured, and Open Source toolkit implementing the \ +Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) \ +protocols as well as a full-strength general purpose cryptography library. The \ +project is managed by a worldwide community of volunteers that use the \ +Internet to communicate, plan, and develop the OpenSSL toolkit and its related \ +documentation. +OpenSSL is based on the excellent SSLeay library developed by Eric A. Young \ +and Tim J. Hudson. The OpenSSL toolkit is licensed under an Apache-style \ +licence, which basically means that you are free to get and use it for \ +commercial and non-commercial purposes subject to some simple license \ +conditions. +" +HOMEPAGE="http://www.openssl.org/" +SRC_URI="http://www.openssl.org/source/openssl-${portVersion}.tar.gz" +CHECKSUM_SHA256="9d1c8a9836aa63e2c6adb684186cbd4371c9e9dcc01d6e3bb447abf2d4d3d093" +LICENSE="OpenSSL" +COPYRIGHT=" + 1995-1998 Eric Young + 1998-2013 The OpenSSL Project. + " +REVISION="1" +ARCHITECTURES="?x86_gcc2 x86 ?x86_64" +SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86" + +PATCHES="openssl-1.0.1h.patchset" + +PROVIDES=" + openssl$secondaryArchSuffix = $portVersion compat >= 1.0.1 + lib:libcrypto$secondaryArchSuffix = $portVersion compat >= 1.0.1 + lib:libssl$secondaryArchSuffix = $portVersion compat >= 1.0.1 + " +if [ -z "$secondaryArchSuffix" ]; then + PROVIDES="$PROVIDES + cmd:c_rehash = $portVersion compat >= 1 + cmd:openssl = $portVersion compat >= 1 + " +fi + +REQUIRES=" + haiku$secondaryArchSuffix >= $haikuVersion + lib:libz$secondaryArchSuffix >= 1.2.3 + ca_root_certificates + " +if [ -n "$secondaryArchSuffix" ]; then + REQUIRES="$REQUIRES + openssl == $portVersion base + " +fi + +BUILD_REQUIRES=" + devel:libz$secondaryArchSuffix >= 1.2.3 + " +BUILD_PREREQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:gcc${secondaryArchSuffix} + cmd:ld${secondaryArchSuffix} + cmd:make + cmd:perl >= 5 + cmd:sed + " + +PATCH() +{ + # fix hard-coded perl path + sed -i 's,/usr/bin/perl,/bin/env perl,g' apps/tsget +} + +BUILD() +{ + PERL="/bin/env perl" \ + ./config --prefix=$prefix --libdir=$relativeLibDir \ + --openssldir=$dataRootDir/ssl \ + zlib shared + make + # multi-job builds don't work correctly +} + +INSTALL() +{ + make MANDIR=$manDir install + + # move include dir to correct location + mkdir -p $(dirname $includeDir) + mv $prefix/include $includeDir + + # prepare develop/lib + prepareInstalledDevelLibs libcrypto libssl + fixPkgconfig + + # devel package + packageEntries devel \ + $developDir \ + $manDir/man3 + + # Remove stuff we don't need in the secondary architecture base package, + # since we make it depend on the primary package. + if [ -n "$secondaryArchSuffix" ]; then + rm -rf $prefix/bin + rm -rf $dataRootDir/ssl + rm -rf $documentationDir + fi +} + +TEST() +{ + make test +} + +# ----- devel package ------------------------------------------------------- + +PROVIDES_devel=" + openssl${secondaryArchSuffix}_devel = $portVersion + devel:libcrypto${secondaryArchSuffix} = $portVersion compat >= 1.0.1 + devel:libssl${secondaryArchSuffix} = $portVersion compat >= 1.0.1 + " +REQUIRES_devel=" + openssl${secondaryArchSuffix} == $portVersion base + " diff --git a/dev-libs/openssl/patches/openssl-1.0.1h.patchset b/dev-libs/openssl/patches/openssl-1.0.1h.patchset new file mode 100644 index 000000000..e2db3e4a1 --- /dev/null +++ b/dev-libs/openssl/patches/openssl-1.0.1h.patchset @@ -0,0 +1,102 @@ +From ce6f8df79f78f6c533f99c44b86850c4f76a84e2 Mon Sep 17 00:00:00 2001 +From: Alexander von Gluck IV +Date: Wed, 18 Jun 2014 02:37:21 +0000 +Subject: [PATCH 1/2] Haiku: build fixes + +--- + Configure | 4 ++++ + Makefile.shared | 8 ++++---- + config | 11 +++++++++++ + 3 files changed, 19 insertions(+), 4 deletions(-) + +diff --git a/Configure b/Configure +index de78469..047ce37 100755 +--- a/Configure ++++ b/Configure +@@ -440,6 +440,10 @@ my %table=( + "beos-x86-r5", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lnet:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC -DPIC:-shared:.so", + "beos-x86-bone", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -mcpu=pentium -Wall::-D_REENTRANT:BEOS:-lbe -lbind -lsocket:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:beos:beos-shared:-fPIC:-shared:.so", + ++##### Haiku ++"haiku-x86", "gcc:-DL_ENDIAN -O2 -fomit-frame-pointer -Wall::-D_REENTRANT::-lnetwork:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:haiku-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"haiku-x86_64", "gcc:-m64 -DL_ENDIAN -O2 -Wall -DMD32_REG_T=int::-D_REENTRANT::-lnetwork:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:haiku-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR):::64", ++ + #### SCO/Caldera targets. + # + # Originally we had like unixware-*, unixware-*-pentium, unixware-*-p6, etc. +diff --git a/Makefile.shared b/Makefile.shared +index e753f44..cce510f 100644 +--- a/Makefile.shared ++++ b/Makefile.shared +@@ -594,10 +594,10 @@ symlink.hpux: + symlink.cygwin symlink.alpha-osf1 symlink.tru64 symlink.tru64-rpath symlink.beos: + + # Compatibility targets +-link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared: link_o.gnu +-link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared: link_a.gnu +-link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared: link_app.gnu +-symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared: symlink.gnu ++link_o.bsd-gcc-shared link_o.linux-shared link_o.gnu-shared link_o.haiku-shared: link_o.gnu ++link_a.bsd-gcc-shared link_a.linux-shared link_a.gnu-shared link_a.haiku-shared: link_a.gnu ++link_app.bsd-gcc-shared link_app.linux-shared link_app.gnu-shared link_app.haiku-shared: link_app.gnu ++symlink.bsd-gcc-shared symlink.bsd-shared symlink.linux-shared symlink.gnu-shared symlink.haiku-shared: symlink.gnu + link_o.bsd-shared: link_o.bsd + link_a.bsd-shared: link_a.bsd + link_app.bsd-shared: link_app.bsd +diff --git a/config b/config +index 41fa2a6..f390fc2 100755 +--- a/config ++++ b/config +@@ -134,6 +134,14 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in + echo "${MACHINE}-dg-dgux"; exit 0 + ;; + ++ Haiku:*:BePC) ++ echo "i586-pc-haiku"; exit 0 ++ ;; ++ ++ Haiku:*:*) ++ echo "${MACHINE}-unknown-haiku"; exit 0 ++ ;; ++ + HI-UX:*) + echo "${MACHINE}-hi-hiux"; exit 0 + ;; +@@ -829,6 +837,9 @@ case "$GUESSOS" in + options="$options no-asm" + fi + ;; ++ i586-*-haiku) OUT="haiku-x86" ;; ++ x86_64-*-haiku) OUT="haiku-x86_64" ;; ++ + # these are all covered by the catchall below + # *-dgux) OUT="dgux" ;; + mips-sony-newsos4) OUT="newsos4-gcc" ;; +-- +1.8.3.4 + +From df9dd1aa2bf9d40613e95c5ae8fe9e5dc3e8c68f Mon Sep 17 00:00:00 2001 +From: Alexander von Gluck IV +Date: Wed, 18 Jun 2014 02:39:12 +0000 +Subject: [PATCH 2/2] Haiku: Modify default Root CA filename + +--- + crypto/cryptlib.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/crypto/cryptlib.h b/crypto/cryptlib.h +index d26f963..96dfd07 100644 +--- a/crypto/cryptlib.h ++++ b/crypto/cryptlib.h +@@ -82,7 +82,7 @@ extern "C" { + #ifndef OPENSSL_SYS_VMS + #define X509_CERT_AREA OPENSSLDIR + #define X509_CERT_DIR OPENSSLDIR "/certs" +-#define X509_CERT_FILE OPENSSLDIR "/cert.pem" ++#define X509_CERT_FILE OPENSSLDIR "/CARootCertificates.pem" + #define X509_PRIVATE_DIR OPENSSLDIR "/private" + #else + #define X509_CERT_AREA "SSLROOT:[000000]" +-- +1.8.3.4 + From 4ccace191904c4bdcf15d632e8f236907ea53b73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= Date: Fri, 20 Jun 2014 17:40:27 +0200 Subject: [PATCH 5/9] Preliminary port of GNU screen Compiles but doesn't work yet. --- .../screen/patches/screen-4.2.1_git.patchset | 56 +++++++++++++++ app-misc/screen/screen-4.2.1_git.recipe | 71 +++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 app-misc/screen/patches/screen-4.2.1_git.patchset create mode 100644 app-misc/screen/screen-4.2.1_git.recipe diff --git a/app-misc/screen/patches/screen-4.2.1_git.patchset b/app-misc/screen/patches/screen-4.2.1_git.patchset new file mode 100644 index 000000000..5efe662e2 --- /dev/null +++ b/app-misc/screen/patches/screen-4.2.1_git.patchset @@ -0,0 +1,56 @@ +From aebd5f2e4b57e6c1461b25c02496efb97c8b201c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= +Date: Fri, 20 Jun 2014 17:16:37 +0200 +Subject: [PATCH 1/2] Haiku port: Check for some libraries + +* libnetwork for sockets, +* libbsd for getpass. +--- + src/configure.in | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/configure.in b/src/configure.in +index 87fd43b..66f9cfb 100644 +--- a/src/configure.in ++++ b/src/configure.in +@@ -1254,7 +1254,9 @@ AC_TRY_LINK([ + #include + ],[nl_langinfo(CODESET);], AC_MSG_RESULT(yes);AC_DEFINE(HAVE_NL_LANGINFO), AC_MSG_RESULT(no)) + +-AC_SEARCH_LIBS(gethostname, nsl) ++AC_SEARCH_LIBS(gethostname, nsl network) ++ ++AC_CHECK_LIB(bsd, getpass) + + AC_CHECK_FUNCS(rename fchmod fchown strerror lstat _exit utimes vsnprintf getcwd setlocale strftime) + +-- +1.8.3.4 + +From 90ac531362b5455424fdebcc9e60576b220f2dde Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= +Date: Fri, 20 Jun 2014 17:18:32 +0200 +Subject: [PATCH 2/2] Haiku port: temporary workaround for missing utmp + +--- + src/acconfig.h | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/src/acconfig.h b/src/acconfig.h +index 2e46985..e5e828b 100644 +--- a/src/acconfig.h ++++ b/src/acconfig.h +@@ -191,7 +191,9 @@ + * If screen is installed with permissions to update /etc/utmp (such + * as if it is installed set-uid root), define UTMPOK. + */ +-#define UTMPOK ++#ifndef __HAIKU__ ++# define UTMPOK ++#endif + + /* Set LOGINDEFAULT to one (1) + * if you want entries added to /etc/utmp by default, else set it to +-- +1.8.3.4 + diff --git a/app-misc/screen/screen-4.2.1_git.recipe b/app-misc/screen/screen-4.2.1_git.recipe new file mode 100644 index 000000000..3141a9a28 --- /dev/null +++ b/app-misc/screen/screen-4.2.1_git.recipe @@ -0,0 +1,71 @@ +SUMMARY="screen - a full-screen terminal window manager" +DESCRIPTION=" +Screen is a full-screen window manager that multiplexes a physical \ +terminal between several processes, typically interactive shells. \ +\ +Each virtual terminal provides the functions of the DEC VT100 terminal \ +and, in addition, several control functions from the ANSI X3.64 \ +(ISO 6429) and ISO 2022 standards (e.g., insert/delete line and support \ +for multiple character sets). \ +There is a scrollback history buffer for each virtual terminal and \ +a copy-and-paste mechanism that allows the user to move text regions \ +between windows. When screen is called, it creates a single window \ +with a shell in it (or the specified command) and then gets out of \ +your way so that you can use the program as you normally would. \ +Then, at any time, you can create new (full-screen) windows with \ +other programs in them (including more shells), \ +kill the current window, view a list of the active windows, \ +turn output logging on and off, copy text between windows, \ +view the scrollback history, switch between windows, etc. \ +All windows run their programs completely independent of each other. \ +Programs continue to run when their window is currently not visible \ +and even when the whole screen session is detached from the users terminal. \ +A command-line compatible rm which destroys file contents before unlinking. \ +" +HOMEPAGE="http://www.gnu.org/software/screen/" +SRC_URI="git://git.savannah.gnu.org/screen.git#bb1ef155222d2c5706f30b6b0fe078a501932dd5" +REVISION="1" +LICENSE="GNU GPL v3" +COPYRIGHT="2010 Juergen Weigert, Sadrul Habib Chowdhury + 2008, 2009 Juergen Weigert, Michael Schroeder, Micah Cowan, Sadrul Habib Chowdhury + 1993-2002, 2003, 2005, 2006, 2007 Juergen Weigert, Michael Schroeder + 1987 Oliver Laumann" + +ARCHITECTURES="?x86_gcc2 ?x86 ?x86_64" +SECONDARY_ARCHITECTURES="?x86_gcc2 ?x86" + +PROVIDES=" + screen$secondaryArchSuffix = $portVersion + cmd:screen = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libncurses$secondaryArchSuffix + " +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel >= $haikuVersion + devel:libncurses$secondaryArchSuffix >= 5.9 + " +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:make + cmd:gcc$secondaryArchSuffix + " + +PATCHES="screen-4.2.1_git.patchset" + +BUILD() +{ + cd src + ./autogen.sh ... + runConfigure ./configure + make +} + +INSTALL() +{ + cd src + make install +} From 24635986f7b1f2e19267da66bfa57cd0ce2c4115 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Fri, 20 Jun 2014 16:03:59 -0400 Subject: [PATCH 6/9] Update Qt recipe to 4.8.6. Fixes a lot of bugs in Qt itself and the Haiku port. --- .../libqt4-4.8.6.1.recipe} | 48 ++++++------ .../qtcore/patches/qtcore-4.8.5.git.patchset | 76 ------------------- 2 files changed, 22 insertions(+), 102 deletions(-) rename dev-qt/{qtcore/qtcore-4.8.5.git.recipe => libqt4/libqt4-4.8.6.1.recipe} (87%) delete mode 100644 dev-qt/qtcore/patches/qtcore-4.8.5.git.patchset diff --git a/dev-qt/qtcore/qtcore-4.8.5.git.recipe b/dev-qt/libqt4/libqt4-4.8.6.1.recipe similarity index 87% rename from dev-qt/qtcore/qtcore-4.8.5.git.recipe rename to dev-qt/libqt4/libqt4-4.8.6.1.recipe index 6f448dad4..60b740b41 100644 --- a/dev-qt/qtcore/qtcore-4.8.5.git.recipe +++ b/dev-qt/libqt4/libqt4-4.8.6.1.recipe @@ -1,17 +1,16 @@ SUMMARY="A comprehensive C++ application development framework" DESCRIPTION=" -Qt is a cross-platform application and UI framework for developers using C++ \ -or QML, a CSS & JavaScript like language. Qt Creator is the supporting Qt IDE. -Qt, Qt Quick and the supporting tools are developed as an open source project \ -governed by an inclusive meritocratic model. Qt can be used under open source \ -(LGPL v2.1) or commercial terms. +Qt is a cross-platform application framework that is widely used for developing \ +software with a graphical user interface, and also used for developing non-GUI \ +programs such as command-line tools and consoles for servers. " -HOMEPAGE="http://qt-haiku.ru" -SRC_URI="git://gitorious.org/+qt-haiku/qt/qt-haiku-port.git" +HOMEPAGE="http://github.com/qt-haiku/qt4" +SRC_URI="https://github.com/qt-haiku/qt4/archive/v4.8.6-haiku-1.tar.gz" +SOURCE_DIR="qt4-4.8.6-haiku-1" LICENSE="GNU LGPL v2.1" -COPYRIGHT="2011 Nokia Corporation and/or its subsidiary(-ies)." -REVISION="4" -ARCHITECTURES="x86" +COPYRIGHT="2014 Digia Plc and/or its subsidiary(-ies)." +REVISION="1" +ARCHITECTURES="x86 ?x86_64" if [ $effectiveTargetArchitecture != x86_gcc2 ]; then # x86_gcc2 is fine as primary target architecture as long as we're building # for a different secondary architecture. @@ -22,7 +21,7 @@ fi SECONDARY_ARCHITECTURES="x86" PROVIDES=" - qtcore$secondaryArchSuffix = $portVersion compat >= 4.8 + libqt4$secondaryArchSuffix = $portVersion compat >= 4.8 cmd:qtconfig$secondaryArchSuffix = $portVersion compat >= 4.8 cmd:qsystray$secondaryArchSuffix = $portVersion compat >= 4.8 lib:libphonon$secondaryArchSuffix = $portVersion compat >= 4.8 @@ -54,13 +53,9 @@ REQUIRES=" lib:libicuuc$secondaryArchSuffix lib:libjpeg$secondaryArchSuffix lib:libpng$secondaryArchSuffix + lib:libtiff$secondaryArchSuffix " -# haiku_x86 doesn't claim to provide lib:libtiff_x86 on gcc2 builds -if [ "$targetArchitecture" != x86_gcc2 ];then - REQUIRES="$REQUIRES lib:libtiff$secondaryArchSuffix" -fi - BUILD_REQUIRES=" icu${secondaryArchSuffix}_devel devel:libz$secondaryArchSuffix @@ -68,11 +63,12 @@ BUILD_REQUIRES=" devel:libssl$secondaryArchSuffix devel:libjpeg$secondaryArchSuffix devel:libpng$secondaryArchSuffix + devel:libtiff$secondaryArchSuffix " -# should have devel:libtiff too but that doesn't seem to be provided BUILD_PREREQUIRES=" haiku${secondaryArchSuffix}_devel >= $haikuVersion + cmd:which cmd:make cmd:g++$secondaryArchSuffix cmd:ld$secondaryArchSuffix @@ -86,7 +82,7 @@ if [ "$targetArchitecture" = x86_gcc2 ];then fi PROVIDES_devel=" - qtcore${secondaryArchSuffix}_devel = $portVersion compat >= 4.8 + libqt4${secondaryArchSuffix}_devel = $portVersion compat >= 4.8 cmd:assistant$secondaryArchSuffix = $portVersion compat >= 4.8 cmd:designer$secondaryArchSuffix = $portVersion compat >= 4.8 cmd:lconvert$secondaryArchSuffix = $portVersion compat >= 4.8 @@ -132,18 +128,13 @@ PROVIDES_devel=" " REQUIRES_devel=" - qtcore$secondaryArchSuffix == $portVersion + libqt4$secondaryArchSuffix == $portVersion haiku$secondaryArchSuffix >= $haikuVersion lib:libz$secondaryArchSuffix - " - -PATCHES="qtcore-4.8.5.git.patchset" - -SOURCE_DIR="qt-haiku-port" +" BUILD() { - ./configure \ -prefix $prefix \ -bindir $binDir \ @@ -164,13 +155,18 @@ BUILD() make $jobArgs - cd src/3rdparty/haiku-tools/qsystray + pushd src/3rdparty/haiku-tools/qsystray if [ "$targetArchitecture" = x86 ];then make -f Makefile.gcc4 else export PATH="/bin:$PATH" make -f Makefile.gcc2 fi + popd + + pushd haiku + ./do-res.sh + popd } INSTALL() diff --git a/dev-qt/qtcore/patches/qtcore-4.8.5.git.patchset b/dev-qt/qtcore/patches/qtcore-4.8.5.git.patchset deleted file mode 100644 index 99a41cd3b..000000000 --- a/dev-qt/qtcore/patches/qtcore-4.8.5.git.patchset +++ /dev/null @@ -1,76 +0,0 @@ -From ebc513ce5d748e963f4ffefe6adb7f45503b44c3 Mon Sep 17 00:00:00 2001 -From: Chris Roberts -Date: Thu, 14 Nov 2013 15:34:00 -0700 -Subject: Adjust font paths for updated Haiku fs layout - - -diff --git a/src/gui/text/qfontdatabase_haiku.cpp b/src/gui/text/qfontdatabase_haiku.cpp -index c1b9526..f7b6dd7 100644 ---- a/src/gui/text/qfontdatabase_haiku.cpp -+++ b/src/gui/text/qfontdatabase_haiku.cpp -@@ -50,9 +50,10 @@ static void initializeDb() - FT_Library lib = qt_getFreetype(); - - directory_which FontDirs[] = { -- B_BEOS_FONTS_DIRECTORY, -- B_COMMON_FONTS_DIRECTORY, -- B_USER_FONTS_DIRECTORY -+ B_SYSTEM_FONTS_DIRECTORY, -+ B_SYSTEM_NONPACKAGED_FONTS_DIRECTORY, -+ B_USER_FONTS_DIRECTORY, -+ B_USER_NONPACKAGED_FONTS_DIRECTORY - }; - - --- -1.8.3.4 - - -From 5aa0dcc8cb9c37c048a771de7f36c57b0c5f16b5 Mon Sep 17 00:00:00 2001 -From: Chris Roberts -Date: Fri, 15 Nov 2013 19:50:49 -0700 -Subject: Remove check for /boot/common/bin/qsystray - - -diff --git a/src/gui/util/qsystemtrayicon_haiku.cpp b/src/gui/util/qsystemtrayicon_haiku.cpp -index 2167476..7f1b1f4 100644 ---- a/src/gui/util/qsystemtrayicon_haiku.cpp -+++ b/src/gui/util/qsystemtrayicon_haiku.cpp -@@ -449,8 +449,9 @@ void QSystemTrayIconPrivate::updateToolTip_sys() - - bool QSystemTrayIconPrivate::isSystemTrayAvailable_sys() - { -- QFileInfo qsystrayfile("/boot/common/bin/qsystray"); -- return qsystrayfile.exists(); -+// QFileInfo qsystrayfile("/boot/common/bin/qsystray"); -+// return qsystrayfile.exists(); -+ return true; - } - - bool QSystemTrayIconPrivate::supportsMessages_sys() --- -1.8.3.4 - - -From e2c3be50acfb8007501788f8cc78d1a7d5729323 Mon Sep 17 00:00:00 2001 -From: Chris Roberts -Date: Sat, 16 Nov 2013 02:45:20 -0700 -Subject: Fix notification timeout milli->micro conversion - - -diff --git a/src/gui/util/qsystemtrayicon_haiku.cpp b/src/gui/util/qsystemtrayicon_haiku.cpp -index 7f1b1f4..d4d5953 100644 ---- a/src/gui/util/qsystemtrayicon_haiku.cpp -+++ b/src/gui/util/qsystemtrayicon_haiku.cpp -@@ -411,7 +411,7 @@ void QSystemTrayIconPrivate::showMessage_sys(const QString &title, const QStrin - notification.SetTitle(stitle); - notification.SetMessageID(smessageId); - notification.SetContent(smessage); -- notification.Send(timeOut/1000); -+ notification.Send(timeOut*1000); - } - } - --- -1.8.3.4 - From b0359a06a5cc13009a9b4691364675a2bc856b79 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Fri, 20 Jun 2014 16:07:43 -0400 Subject: [PATCH 7/9] Fix Quassel-0.10 recipe. Was missing patch and needed checksum. Also tweaked the description and Zlib dependency. --- .../quassel/patches/quassel-0.9.2.patchset | 47 +++++++++++++++++++ net-irc/quassel/quassel-0.10.0.recipe | 21 +++++---- 2 files changed, 58 insertions(+), 10 deletions(-) create mode 100644 net-irc/quassel/patches/quassel-0.9.2.patchset diff --git a/net-irc/quassel/patches/quassel-0.9.2.patchset b/net-irc/quassel/patches/quassel-0.9.2.patchset new file mode 100644 index 000000000..1411b9c4b --- /dev/null +++ b/net-irc/quassel/patches/quassel-0.9.2.patchset @@ -0,0 +1,47 @@ +From 55ad7aed364d584ead50c39ddf78675688b8ab6f Mon Sep 17 00:00:00 2001 +From: "Arfonzo J. Coward" +Date: Thu, 5 Dec 2013 17:47:21 +0000 +Subject: =?UTF-8?q?Updated=20recipe=20to=20add=20.rsrc=20file=20and=20MIME?= + =?UTF-8?q?=20settings.=0AAdded=20resource=20file=20with=20icon=20and=20fi?= + =?UTF-8?q?le=20information.=20Resource=20contributed=20by=20Giovanni=20M.?= + =?UTF-8?q?.?= + + +diff --git a/Haiku/Quassel.rsrc b/Haiku/Quassel.rsrc +new file mode 100644 +index 0000000000000000000000000000000000000000..cf921f1d416a178ecf10780faf4f4382b67844b3 +GIT binary patch +literal 3728 +zcmeHJZERCz6h61Tz1uDumM>XJMy_PeJ78^hZ`XF+Si7}dKUkrx+h`eqk+I3hGA0{l +zmWb8(gG>#u1Xz|BjrfBI5&S~MMGFc+{Ie0GE@D_>FoBc=F#!X`dd|J;oJeA#;ona4 +z_C3!z=XuWQ?c3fP-0|EKJ3IP1)B0FAHE(n>#hmg38sag47vE0nTXPZSfqt!rMaM&n +z!?*un#0BJD)2bTV7}ck6294s6!XGOD7)D{zKb`}yL~R4-(LbtDK@ShGbgKWWSg*`F +zRre@oqZYIJ>V=-Y4zt%`_6*FPf!Quf^s{^7b%b`fuX8TQmrx&lE6(C&xz$-<^SlGlqDZoUi0ak8m?$(xrO#OGEsS +zgc$kci@2`c9|7{!8@?glk{&_kzZ=z?QUCYye5UuM;X=|%Xp8Y_X+1tYObJ-u=W+=|0>`m@J_wT8R2dd?GtKqkfF? +z58~9^zR3hLbXnz3T-~%YSwni%Kdp}Uh6 +z^H6_`C5exFn^Ir!?d0Ea`V-J{dny_omz4R~BoNN>NskQqiMo7%)Z7#4gl1?A@lA@; +zEMz_HU7d4ucuYA>^{3yhD*E{g&BdCxmId#cJoCST%#VjN=@X@tb!|FYt$*+51zKIdw(=G +z;JoyG@V8%m_844<>M}RmISqr#pYyDQa(wRkzk`tlQ*|27`W^Q*uhH%B$p6mP*NHsx;e7Wh;<4^uo~i +zViza>!Nk=-`0eYG`cUp*xg@>Dr&4x8OtQE79?cC##5%reh8Y@Vv1 +z&1F5a{`8$%S;LuS%2ZU!cAJB$9kyDzR(47=JM+1oP+f>7^W$hiRN!=PXlM3p%nkxN +ztI=w#G`TF*7PqC|SYKYh!X>)JYSAiImRd#3qbEOQDwc}NikFuzFIm3QWGpjE$db#f +zMvnV~t84S(E7%s^w0iT`&TkepMb~dQAG^>QY>M(M&JpnkJt1D}vf?Bbp2e%yS`(^n +z;I+#v%NmTX1$+*ZD~JLQ446fMS^P4vJi{;)(lDCrw$Q+987(1}VQI_N~)M@OB4XYw^kM2fkxIil#N +z3&0<$FQ)?fx1?Y9!;JD|I$RISM?!%R@o5!6op)`-Q5z0#js$$uA({DZ{*dofO|&X=Zh$vSj_9ye0`w7ySXVA_C}^vuIyeC!vgpd +Dzbg#b + +literal 0 +HcmV?d00001 + +-- +1.8.3.4 + diff --git a/net-irc/quassel/quassel-0.10.0.recipe b/net-irc/quassel/quassel-0.10.0.recipe index 7ff786c32..6fe7f0c12 100644 --- a/net-irc/quassel/quassel-0.10.0.recipe +++ b/net-irc/quassel/quassel-0.10.0.recipe @@ -1,4 +1,4 @@ -SUMMARY="Quassel IRC." +SUMMARY="Quassel IRC" DESCRIPTION=" Quassel IRC is a modern, cross-platform, distributed IRC client, meaning that one (or multiple) client(s) can attach to and detach @@ -6,19 +6,18 @@ from a central core -- much like the popular combination of screen and a text-based IRC client such as WeeChat, but graphical. In addition to this unique feature, we aim to bring a pleasurable, comfortable chatting experience to all major platforms (including -Linux, Windows, and MacOS X as well as Android smartphones), making +Linux, Windows, and Mac OS X as well as Android smartphones), making communication with your peers not only convenient, but also -ubiquitous available. - " +easily available." HOMEPAGE="http://quassel-irc.org" SRC_URI="http://quassel-irc.org/pub/quassel-0.10.0.tar.bz2" -CHECKSUM_MD5="382466a7790979c172b7d7edf10a2981" -REVISION="1" +CHECKSUM_SHA256="68228ce23aa3a992add3d00cb1e8b4863d8ca64bea99c881edf6d16ff9ec7c23" +REVISION="2" LICENSE=" GNU GPL v2 GNU GPL v3 " -COPYRIGHT="2005-2014, the Quassel IRC Team" +COPYRIGHT="2005-2014 The Quassel IRC Team" ARCHITECTURES="x86" if [ $effectiveTargetArchitecture != x86_gcc2 ]; then @@ -38,7 +37,8 @@ PROVIDES=" REQUIRES=" haiku${secondaryArchSuffix} >= $haikuVersion - qtcore${secondaryArchSuffix} >= 4.8 + libqt4${secondaryArchSuffix} >= 4.8 + lib:libz${secondaryArchSuffix} " PATCHES=" @@ -54,7 +54,8 @@ BUILD_PREREQUIRES=" BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel >= $haikuVersion - qtcore${secondaryArchSuffix}_devel >= 4.8 + libqt4${secondaryArchSuffix}_devel >= 4.8 + devel:libz${secondaryArchSuffix} " BUILD() @@ -62,7 +63,7 @@ BUILD() mkdir -p build cd build cmake -DCMAKE_INSTALL_PREFIX=$prefix -DCMAKE_C_COMPILER="gcc" -DCMAKE_CXX_COMPILER="g++" .. - make + make $jobArgs } INSTALL() From 248505dc5565c11f963c0045aa2c7fd943d3c507 Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Sat, 21 Jun 2014 09:37:15 -0400 Subject: [PATCH 8/9] Add recipe and patches for QupZilla 1.7.x (patch by Arfonzo and Giova84). --- .../qupzilla/patches/qupzilla-1.7.x.patchset | 304 ++++++++++++++++++ www-client/qupzilla/qupzilla-1.7.x.recipe | 80 +++++ 2 files changed, 384 insertions(+) create mode 100644 www-client/qupzilla/patches/qupzilla-1.7.x.patchset create mode 100644 www-client/qupzilla/qupzilla-1.7.x.recipe diff --git a/www-client/qupzilla/patches/qupzilla-1.7.x.patchset b/www-client/qupzilla/patches/qupzilla-1.7.x.patchset new file mode 100644 index 000000000..f070295b2 --- /dev/null +++ b/www-client/qupzilla/patches/qupzilla-1.7.x.patchset @@ -0,0 +1,304 @@ +From 8fd07376920cebdbb551fb937c91acf408fb6c44 Mon Sep 17 00:00:00 2001 +From: "Arfonzo J. Coward" +Date: Thu, 5 Dec 2013 18:47:08 +0000 +Subject: QupZilla resource file. Provided by Giovanni, converted to .rdef + file. + + +diff --git a/Haiku/QupZilla.rdef b/Haiku/QupZilla.rdef +new file mode 100644 +index 0000000..e5bc598 +--- /dev/null ++++ b/Haiku/QupZilla.rdef +@@ -0,0 +1,161 @@ ++ ++resource app_signature "application/x-vnd.QupZilla"; ++ ++resource app_version { ++ major = 1, ++ middle = 5, ++ minor = 0, ++ ++ variety = B_APPV_DEVELOPMENT, ++ internal = 0, ++ ++ short_info = "Qupzilla Qt browser", ++ long_info = "Qupzilla © 2010 - 2013 David Rosca" ++}; ++ ++resource vector_icon array { ++ $"6E6369660904008D040057020106033D8AFE000000000000BD8AFE48F10748A0" ++ $"7831B4E8F7C800EAFFFFFFFFFF020106033D0AFE000000000000BD0AFE48F107" ++ $"48A078509FA0A4DB677280FF6B6B6B020116043D950B0000000000003D950B49" ++ $"4FBC479BEC00FF4CF591D2FF9E0200020538B239BCCACB3F86163B6714C24359" ++ $"4A75A8000000FFFF3F0000FF2F750000FF72A00303946EF2030394FF05FF05FF" ++ $"020112023E9FFF0000000000003CC0004A70004B00009CFF0000FFFF1302043C" ++ $"26C2FF26B95026263C26B95026C2FF3C52B95052C2FF52523C52C2FF52B95002" ++ $"6EC5DCB8B6C713BAA0C4CAB706C110B579C307B5D5C0A2B565BFC2B55BC032B5" ++ $"5BBDBCB55BBA69B7BABBC5B63AB8F9B94FB89DBD9CB84FBB7EB8C7BE9AB924BF" ++ $"77B8E0BEE7B9DEC11FBCE0C332BB38C279BEC5C405C2D8C31AC0FBC3FCC2C6C2" ++ $"C1C22FC2B7C27AC2BEC22FC2B7C227C2B7C227C2B7C227C2B7C241C2BDC241C2" ++ $"BDC206C2B0C199C2DBC1D0C2CBC159C2EEC0D4C2DDC115C2E5C051C2CEBF43C3" ++ $"13BFB0C2B4BF3DC313BF36C313BF36C313BF36C313BF20C313BF20C313BF20C3" ++ $"13BDEDC313BE23C313BDB9C2EDBD57C2DFBD87C2E3BD54C2DCBD3EC2C3BD3EC2" ++ $"C3BD31C2B4BD13C2A5BD26C2ABBD13C2A5BCA4C27EBCA4C27EBCA4C27EBC31C2" ++ $"54BC31C254BC27C251BC12C24FBC1DC250BC10C24BBC0FC242BC11C246BC0FC2" ++ $"42BBF5C219BBF5C219BBD3C1DEBB68C195BBAEC1A4BB71C16EBB58C129BB63C1" ++ $"4EBB4BC101BB4BC0ADBB48C0D7BB4BC0ADBB4EC087BB4EC087BB52C054BB4DBF" ++ $"EEBB55C021BB9EBF93BBA9BEBFBBB0BF36BBA9BEBFBBA7BE93BBA7BE93BBA7BE" ++ $"53BBBCBE2FBBA8BE4BBBBCBE2FBBC7BE21BBC7BE21BC00BDD5BBE3BCFCBC5BBD" ++ $"3DBBE3BCFCBAB7BC58BAB7BC58BAB7BC58BA8BBC44BA90BC46BA8BBC44BA8BBC" ++ $"42BA8BBC42BA89BBEABA23BB79BA6ABBADBA23BB79BA12BB6BBA12BB6BBA12BB" ++ $"6BB9F8BB49B9F8BB49B9F8BB49B9AEBAF0B9AEBAF0B97EBAC3B928BAB1B950BA" ++ $"B5B924BAA9B91BBA9AB920BAA1B984BA6EB9DEB997B9B5B9F9B9F6B95DBA36B8" ++ $"F0BA0BB91FBA5EB8C4BA78B85EBA83B89EBACCB83DBB61B7E7BB18B813BB61B7" ++ $"E7BB6BB7E1BB6BB7E1BB6BB7E1BBFEB787BBFEB787BC65B74ABCB6B684BC94B6" ++ $"F6BCF5B68ABD58B665BD2DB67BBDA8B695BE6DB651BE29B697BE6FB650BE88B6" ++ $"4FBE7CB64FBE62B6A0BEE1B72FBE88B70EBEE4B733BEE9B73EBEE5B73ABED8B7" ++ $"44BEC6B74ABEC6B74ABEC6B74ABE75B7A5BE75B7A5BE63B7DDBE90B849BE74B8" ++ $"17BE91B84CBE92B852BE92B852BE94B85CBE9DB87ABE97B86BBE94B884BE8CB8" ++ $"8DBE8CB88DBE3AB8F0BD92B98FBDB7B906BD92B98FBD8DB9A1BD8DB9A1BD64B9" ++ $"D8BD7EBA55BD59BA19BD7BBA5CBD77BA63BD77BA63BD56BAA0BD4DBB2CBD39BA" ++ $"E6BD60BB70BDCCBBCEBD98BBA2BDFFBBFABE73BC3FBE33BC27BEBEBC5CBF5EBC" ++ $"42BF12BC56BF5EBC42BFAC37BFAC37BFD0BC1EC01CBC0FBFF5BC0BC046BC14C0" ++ $"83BC4EC066BC35C04DBCD9C0F4BDDAC0B6BD63C0F4BDDAC107BDF9C102BDF2C0" ++ $"BABE84C127BF91C0B2BF1DC127BF91C133BF9DC133BF9DC131C00FC1C5C0F9C1" ++ $"35C0D6C259C11CC348C059C2EEC0C9C348C059C36BC02FC36BC02FC36BC02FC3" ++ $"88C019C388C019C3A8C003C3DBBFC5C3C9BFE8C3EEBFA0C409BF52C3F0BF73C4" ++ $"09BF52C409BF53C409BF53C40DBF9AC495BFC1C450BFCEC4EBBFB3C542BF10C5" ++ $"1FBF56C542BF10C551BEF2C551BEF2C551BEF2C555BEEBC555BEEBC57FBEA3C5" ++ $"68BDFCC59EBE47C53ABDBBC4A3BDDFC4E1BDAAC4A3BDCAC4A3BDB5C4A3BDB5C4" ++ $"A3BDB5C4A5BD31C4A5BD31C4A8BD1EC4E8BCDFC4D2BCF5C4E8BCDFC4FEBCC9C4" ++ $"FEBCC9C4FEBCC9C516BCB3C516BCB3C545BC8BC582BC20C571BC5EC58CBC05C5" ++ $"88BBBCC586BBD9C588BBBCC587BBA8C587BBA8C587BBA8C588BB9DC588BB9DC5" ++ $"8DBB614EBAFAC584BB24C58ABADAC5C2BA5DC5B0BAA2C5C4BA62C5CBBA70C5CB" ++ $"BA70C5D9BA8EC60FBAD4C5EDBAB3C60ABB1FC648BBAAC627BB67C669BBEBC66F" ++ $"BC7BC670BC33C66FBC7BC672BCC4C672BCC4C674BCEAC66EBD37C678BD11C664" ++ $"BD5AC649BD9CC652BD79C633BDECC62CBE92C62DBE3FC621BED5C67FBF2CC648" ++ $"BF16C750BD0F0006BC12B6E4BC12B6E4BC32B6B0BC55B638BC47B674BB81B6AB" ++ $"BA2BB802BAC4B747BA88B7E3BB30B77EBADDB7B0BB59B765BBAAB733BB82B74D" ++ $"BBCBB71DBC12B6E4BBFCB707BC12B6E4001DBACDBFD1BACDBFD1BAEBBFAABB29" ++ $"BF5CBB13BF89BB43BF24BB34BE93BB34BED0BB34BE4DBB60BDEABB34BE25BB80" ++ $"BDBEBBABBD60BBA1BD98BB48BD2ABA81BCBEBAE5BCF3BA67BCB1BA20BC83BA2D" ++ $"BCA0BA0FBC5BBA0DBC02BA1FBC28B9FEBBE5B9BABBB6B9D0BBD0B99BBB91B95F" ++ $"BB44B983BB66B93DBB24B8F0BB2DB91CBB16B8C0BB48B8BEBADFB8C3BAFFB8B1" ++ $"BB14B89FBB7EB8A7BB49B8C9BB7EB8C5BBB2B8C3BB8AB8C6BBDBB8C9BC2EB8C7" ++ $"BC05B8D0BC40B8BABC49B8CBBC49B8B4BC4BB8AABC4EB8AFBC4DB8A0BC57B893" ++ $"BC4BB898BC56B882BC4AB88FBD10B88EBD00B893BD49B8E1BDE7B88DBE03B90D" ++ $"BE04B923BE75B906BE4BB946BEA8B985BF00B973BEC1B997BF3EB9A3BFC1B998" ++ $"BF81B9B0C011BA17C05FB9DBC02EBA25C0B3BA75C127BA3DC0E7BA8FC144BAC0" ++ $"C17FBAA9C160BAD8C19FBAFCC17CBAE4C19DBADDC13ABAD7C0A6BAD3C0EFBADB" ++ $"C061BACDBFD1BAEAC013BACDBFD10009BD5EB5D7BD5EB5D7BD81B5EEBDB1B60E" ++ $"BD84B605BDD0B613BE19B601BE01B61ABE55B5C3BEF6B5C4BEB0B5EFBF2DB5A2" ++ $"BFA3B55EBF5BB55EBFCEB55DC00CB58CBFE9B578C03CB5A7C090B566C064B575" ++ $"BF3AB541BCA7B60EBDDDB57ABCECB623BD5EB5D7BD29B601BD5EB5D70005BF35" ++ $"B6EABF35B6EABF55B6ECBF9AB6F5BF7BB702BFCEB6E0BF87B67DBF9CB693BF78" ++ $"B66DBF3CB664BF2FB623BF45B690BF35B6EABF6BB6CCBF35B6EA0004BA07B87F" ++ $"BA07B87FBA0CB868B9EFB850B9FEB85FB982B8E4B8F0BA35B92CB988B97E31BA" ++ $"07B87FB974B8F0BA07B87F0066C6F7BC24C6F7BC24C6DCBB0AC6002FC68BB9F2" ++ $"C5B9B87CC4FFB79CC563B805C4CEB768C463B709C49AB737C452B6FBC428B6EF" ++ $"C440B6E2C412B6FAC407B6C1C401B6D1C316B60FC0D0B56FC1F9B59AC0FBB58B" ++ $"C15FB59CC131B589C170B5A2C179B5C9C19FB5BDC12DB5E2C08AB5C9C0D7B5C4" ++ $"C05AB5CDC03FB60EC043B5DDC03DB629C040B676C036B65DC04BB694C0B6B65F" ++ $"C0A8B66FC0CDB643C0F1B61AC0B1B608C108B64BC0D0B6B1C13AB6D6C0B5B6A7" ++ $"C066B689C083B67CC064B68AC05DB6AFC05FB6ABC053B6C0C031B6D0C044B6CB" ++ $"BFE6B6E5BF94B741BFB0B6EFBF87B769BF5DB791BF88B781BF3BB79DBEF7B7B2" ++ $"BF17B7A4BECCB7C7BEFAB81CBEEAB7FFBF06B830BF19B86CBF03B860BF59B891" ++ $"BFBEB7E0BFA3B802BFE1B7B3C038B7ADC008B7BDC04FB7A6C084B777C06CB76E" ++ $"C0D3B795C0F8B83EC0EBB7F4C110B83FC135B810C100B802C10DB7E5C0ECB770" ++ $"43B7ABC125B795C15FB7FDC14DB7BDC170B83DC1C2B820C18EB860C1CFB813C1" ++ $"FDB7D5C1E2B7BDC214B7EAC1F1B838C215B82FC206B84BC23AB83DC222B843C2" ++ $"5AB834C28BB842C26CB836C2AFB850C2FAB857C2D5B854C320B859C347B898C3" ++ $"35B87BC377B8E7C24AB8C5C259B8C6C228B8C3C1E2B8D0C202B8C2C1C9B8DAC1" ++ $"99B8F0C1B62FC179B8E5C13FB8B6C15BB8C8C118B89CC0C5B872C0EFB885C07F" ++ $"B853BFE3B84FC02FB83FBFBFB856BF7FB87CBF9CB866BF5CB897BF11B8A4BF35" ++ $"B87FBEDCB8DCBE6EB942BEB6B91FBE51B950BE19B976BE2EB95CBE04B990BDF6" ++ $"B9D1BE04B9B4BDE9B9EEBDE2BA1DBDCAB9FCBDF8BA3CBDEFBA76BDFEBA53BDD9" ++ $"BAA9BDC9BB27BD9FBAEFBDF235BE71BBBCBE3ABB94BEAFBBE9BF41BBD2BEFBBB" ++ $"E5BF83BBC1C009BB9CBFC5BBA1C05FBB96C0DDBC03C0A1BBCDC104BC26C0F5BC" ++ $"67C114BC34C0D3BC9FC103BD00C0E8BCC8C11FBD37C159BDA3C13CBD6DC166BD" ++ $"BAC182BDE8C177BDD0C18EBE04C16DBE2DC17BBE15C152BE5EC13FBECFC13FBE" ++ $"97C13FBF0EC185BF4CC15DBF24C1AABF71C1A4BFE3C1A8BFB3C1A0C025C1DBC0" ++ $"87C1B3C053C216C08AC289C06CC253C086C2CBC04DC319BFDEC2E8C00FC347BF" ++ $"B0C386BF66C378BFABC396BF13C3FEBEBFC3C2BEF2C435BE90C430BE0CC42EBE" ++ $"4DC432BDC0C433BD22C429BD6DC43CBCDEC4ABBC78C47EBCA7C4CDBC56C512BC" ++ $"03C505BC34C519BBE7C513BBA8C51336C513BB93C51135C51ABB71C4F8BB29C4" ++ $"7EBB2CC48ABB5DC476BB0EC48BBB01C477BB14C4A1BAEDC478BACDC48BBAD8C4" ++ $"42BAADC3F1BA66C418BA9AC3CCBA36C391B9CBC3AEBA00C389B9BEC36CB93BC3" ++ $"42B92EC39AB94AC3E2B9A3C3C4B981C419B9DFC46DBA6AC44ABA20C46EBA73C4" ++ $"96BA8AC48FBA85C4AFBA9CC4EABAA8C4CABAABC533BAA2C55ABA20C555BA61C5" ++ $"62B9C7C4E8B9AFC51DB9DAC4CAB997C49EB958C4B6B975C48FB946C474B90EC4" ++ $"66B92AC493B8F9C4BDB91DC49FB90BC4E0B932C52CB951C505B944C555B95EC5" ++ $"B4B96CC592B952C5C9B97CC5E7B9B8C5D9B9A2C5FEB9DCC627BA26C614BA00C6" ++ $"45BA61C694BA9FC64DBA89C667BAE8C6B6BB83C693BB3FC6DFBBD4C6E3BC7CC6" ++ $"E4BC23C6E2BCCEC6D0BD79C6F5BD2CC6A7BDCCC69FBE9AC69FBE3EC6A1BE95C6" ++ $"A5BE88C6A3BE8DC6A2BE8FC6A1BEC0C696BEBEC6B2BEC4C6D6BE02C6D2BE15C6" ++ $"F6BD65C6F7BC24C700BCC4C6F7BC240008C301B7D8C301B7D8C2E6B7DCC2D4B7" ++ $"A4C2E8B7AEC2B1B792C269B7B8C288B7A7C204B7EFC236B743C221B77BC239B7" ++ $"3AC285B744C27AB746C2A7B740C2F3B74FC2D8B731C30CB76BC33CB7A1C31FB7" ++ $"87C360B7C2C301B7D8C31CB7D4C301B7D80004BB53C203BB53C203BB45C20DBB" ++ $"26C221BB38C21DBB55C249BBBAC291BB87C26EBB92C265BB53C203BB84C227BB" ++ $"53C2030005C4F4BE2EC4F4BE2EC4D3BE57C48CBEA4C4A6BE76C46EBEDAC47DBF" ++ $"53C47DBF18C4B6BF38C4EDBEB9C4D0BEECC502BE93C4F4BE2EC531BE48C4F4BE" ++ $"2E0009C213C327C213C327C17FC390BFF7C345C09DC332BFD0C349BF8EC36ABF" ++ $"ACC350BF67C38CBF20C386BF56C386BEAFC386BDCDC386BE3EC386BEC1C3CBC0" ++ $"C0C3BABFC4C3DDC137C3AAC221C367C1AFC38EC22AC364C262C32BC280C337C2" ++ $"49C322C213C327C22AC331C213C32702044844C83744BDA844304F30C34E30C8" ++ $"25485ABDA85AC8375A604F60C82560C34E02044844C83744BDA844304F30C34E" ++ $"30C825485ABDA85AC8375A604F60C82560C34E00033129B6FBB62F382A432D38" ++ $"29C350B90A51374F34C7F0BE4900032F2BB61DB6E7352C4331BD1AB8554B3452" ++ $"3AC5A5BC67563D00032F2AB6132A362A452EBDF8B6F64C3153395236C82ABF7F" ++ $"00032F2AB61AB692362B4431BD92B8284B3453395137C935BED9000333293025" ++ $"BB8EB7E64032BBC9B87947355137C4F2BBF058380F0A01010C2020230A000100" ++ $"12403FFF000000000000403FFFC37FFDBDFFEA01178400040A020100024045D1" ++ $"0000000000004045D1C3D174BF45D10A05010C023F800000000000000040D174" ++ $"C57FFFCAABA20A07010E12405F24B29AD639906A408BA7C636B6419D45011781" ++ $"00040A07010F124015ED323FDBB24E2E402334C5F50747993901178100040A07" ++ $"0112124066B7000000000000401824C818EA49567301178100040A0701101239" ++ $"2225C032573F46E538E8064444BD4BFBDC01178100040A07011112B96A6E4008" ++ $"5EBF3FF2B8E00B4AF9633A4E3F01178100040A08010D023BAAAA000000000000" ++ $"3DA2E84655554551740A08010D023BAAAA0000000000003E0000480AAA48C000" ++ $"0A08010D023A55550000000000003C2E8B485555422E8B0A08010D023A555500" ++ $"00000000003C2E8B462AAA49A5D10A030101024089423E3FC6BE4B32407CA03E" ++ $"BCEEC81B9D0A040A0304050607080A0B02090240889B3E4A79BE57CC407A333F" ++ $"DD1AC822A9" ++}; ++ ++resource file_types message { ++ "types" = "application/x-vnd.Be-bookmark", ++ "types" = "application/x-vnd.Be.URL.file", ++ "types" = "application/x-vnd.Be.URL.ftp", ++ "types" = "text/html", ++ "types" = "application/x-vnd.Be.URL.http", ++ "types" = "application/x-vnd.Be.URL.https" ++}; +-- +1.8.3.4 + + +From d4cab847f667f280d6cba95d6d61eb0d82feeca2 Mon Sep 17 00:00:00 2001 +From: "Arfonzo J. Coward" +Date: Mon, 24 Mar 2014 23:16:35 +0000 +Subject: Modify defines.pri for Haiku-specific build options. + + +diff --git a/src/defines.pri b/src/defines.pri +index c21413b..aa6fa11 100644 +--- a/src/defines.pri ++++ b/src/defines.pri +@@ -13,6 +13,11 @@ unix: VERSION = 1.7.0 + # Please read BUILD information # + #DEFINES *= PORTABLE_BUILD + ++DEFINES *= QUPZILLA_PREFIX="/boot/home/config/apps/QupZilla/" ++DEFINES *= DISABLE_DBUS ++DEFINES *= NO_SYSTEM_DATAPATH ++DEFINES *= NO_X11 ++ + win32-msvc* { + DEFINES *= W7API + LIBS += User32.lib Ole32.lib Shell32.lib ShlWapi.lib Gdi32.lib ComCtl32.lib +-- +1.8.3.4 + + +From 2a263fe6616cb263bfe0dd4911626811fec2ae99 Mon Sep 17 00:00:00 2001 +From: "Arfonzo J. Coward" +Date: Mon, 24 Mar 2014 23:17:19 +0000 +Subject: Tweak #ifdefs to include/exclude required headers for Haiku. Modify + qupzilla_signal_handler() to avoid saving backtrace on Haiku. + + +diff --git a/src/main/main.cpp b/src/main/main.cpp +index 9527c32..599520e 100644 +--- a/src/main/main.cpp ++++ b/src/main/main.cpp +@@ -22,9 +22,11 @@ + #include // For QT_REQUIRE_VERSION + #include + +-#if defined(Q_OS_LINUX) || defined(__GLIBC__) || defined(__FreeBSD__) ++#if defined(Q_OS_LINUX) || defined(__GLIBC__) || defined(__FreeBSD__) || defined(__HAIKU__) + #include ++#ifndef __HAIKU__ + #include ++#endif + + #include + #include +@@ -48,6 +50,7 @@ void qupzilla_signal_handler(int s) + } + sigSegvServed = true; + ++#ifndef __HAIKU__ + std::cout << "QupZilla: Crashed :( Saving backtrace in " << qPrintable(DataPaths::path(DataPaths::Config)) << "/crashlog ..." << std::endl; + + void* array[100]; +@@ -97,6 +100,9 @@ void qupzilla_signal_handler(int s) + file.close(); + + std::cout << "Backtrace successfuly saved in " << qPrintable(dir.absoluteFilePath(file.fileName())) << std::endl; ++#else ++ std::cout << "QupZilla: Crashed :(" << std::endl; ++#endif + } + #endif // defined(Q_OS_LINUX) || defined(__GLIBC__) || defined(__FreeBSD__) + +-- +1.8.3.4 + + +From 75f5809666b4b3eaf2aa1f53f694c04985ce90fa Mon Sep 17 00:00:00 2001 +From: "Arfonzo J. Coward" +Date: Mon, 24 Mar 2014 23:19:25 +0000 +Subject: processinfo.cpp: manually define DT_DIR on Haiku. + + +diff --git a/src/lib/3rdparty/processinfo.cpp b/src/lib/3rdparty/processinfo.cpp +index 6cc179c..17190b8 100644 +--- a/src/lib/3rdparty/processinfo.cpp ++++ b/src/lib/3rdparty/processinfo.cpp +@@ -29,6 +29,10 @@ + #include + #endif + ++#ifdef __HAIKU__ ++#define DT_DIR 4 ++#endif ++ + ProcessInfo::ProcessInfo(const QString &name) + : m_name(name) + { +-- +1.8.3.4 + + +From f2a317930fc3ffb5dc3bc9d71dbfdc160540b630 Mon Sep 17 00:00:00 2001 +From: "Arfonzo J. Coward" +Date: Tue, 25 Mar 2014 00:17:04 +0000 +Subject: Ugly Haiku workaround for ProcessInfo::GetPIDbyName(). + + +diff --git a/src/lib/3rdparty/processinfo.cpp b/src/lib/3rdparty/processinfo.cpp +index 17190b8..c39f0dc 100644 +--- a/src/lib/3rdparty/processinfo.cpp ++++ b/src/lib/3rdparty/processinfo.cpp +@@ -79,6 +79,7 @@ pid_t ProcessInfo::GetPIDbyName(const char* cchrptr_ProcessName) const + + // Loop while not NULL + while ((de_DirEntity = readdir(dir_proc))) { ++#ifndef __HAIKU__ + if (de_DirEntity->d_type == DT_DIR) { + if (IsNumeric(de_DirEntity->d_name)) { + strcpy(chrarry_CommandLinePath, "/proc/") ; +@@ -112,6 +113,7 @@ pid_t ProcessInfo::GetPIDbyName(const char* cchrptr_ProcessName) const + } + } + } ++#endif + } + + closedir(dir_proc) ; +-- +1.8.3.4 + diff --git a/www-client/qupzilla/qupzilla-1.7.x.recipe b/www-client/qupzilla/qupzilla-1.7.x.recipe new file mode 100644 index 000000000..e97687ec1 --- /dev/null +++ b/www-client/qupzilla/qupzilla-1.7.x.recipe @@ -0,0 +1,80 @@ +SUMMARY="QupZilla, a lightweight QtWebKit web browser" +DESCRIPTION=" + QupZilla is a lightweight multiplatform web browser based on QtWebKit. + + It provides: + - A unified interface for bookmarks, history and RSS reading. + - A themeable interface. + - Integrated AdBlock. + - Speed Dial. + - Multiplatform support." +HOMEPAGE="http://www.qupzilla.com" +SRC_URI="git://github.com/QupZilla/qupzilla.git" +REVISION="2" +LICENSE="GNU GPL v3" +COPYRIGHT="2010-2013 David Rosca" + +ARCHITECTURES="x86" +if [ $effectiveTargetArchitecture != x86_gcc2 ]; then + ARCHITECTURES="$ARCHITECTURES x86_gcc2" +fi +#ARCHITECTURES="x86 x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + qupzilla${secondaryArchSuffix} = $portVersion + app:qupzilla${secondaryArchSuffix} = $portVersion + " + +# TODO: update requirements to be more specific about which Qt +# libraries are required. +REQUIRES=" + haiku${secondaryArchSuffix} >= $haikuVersion + libqt4${secondaryArchSuffix} >= 4.8.0 + " + +BUILD_PREREQUIRES=" + cmd:qmake${secondaryArchSuffix} + cmd:make + cmd:g++${secondaryArchSuffix} + cmd:pkg_config + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel == $haikuVersion + #qtcore${secondaryArchSuffix} >= 4.8.0 + libqt4${secondaryArchSuffix}_devel >= 4.8.0 + devel:libssl${secondaryArchSuffix} + " + +PATCHES="qupzilla-1.7.x.patchset" + +BUILD() +{ + qmake QUPZILLA_PREFIX=${appsDir}/QupZilla + make $jobArgs +} + +INSTALL() +{ + echo "Installing QupZilla..." + + mkdir -p ${appsDir}/QupZilla/ + mkdir -p ${appsDir}/QupZilla/lib/ + + cd bin/ + + # Add Haiku resources. + rc -o ../Haiku/QupZilla.rsrc ../Haiku/QupZilla.rdef + xres -o qupzilla ../Haiku/QupZilla.rsrc + mimeset -f qupzilla + + cp qupzilla ${appsDir}/QupZilla/ + cp -R locale ${appsDir}/QupZilla/ + cp -R plugins ${appsDir}/QupZilla/ + cp -R themes ${appsDir}/QupZilla/ + cp libQupZilla.* ${appsDir}/QupZilla/lib/ + + echo "Linking QupZilla..." + addAppDeskbarSymlink ${appsDir}/QupZilla/qupzilla "QupZilla" +} From 943d4c63c0074f1b9e5b25a993e32865f33987ec Mon Sep 17 00:00:00 2001 From: Augustin Cavalier Date: Sat, 21 Jun 2014 09:52:34 -0400 Subject: [PATCH 9/9] Address review comments on the Qt recipes. --- dev-qt/libqt4/libqt4-4.8.6.1.recipe | 2 +- www-client/qupzilla/qupzilla-1.7.x.recipe | 19 ++++++++----------- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/dev-qt/libqt4/libqt4-4.8.6.1.recipe b/dev-qt/libqt4/libqt4-4.8.6.1.recipe index 60b740b41..0199214fb 100644 --- a/dev-qt/libqt4/libqt4-4.8.6.1.recipe +++ b/dev-qt/libqt4/libqt4-4.8.6.1.recipe @@ -156,7 +156,7 @@ BUILD() make $jobArgs pushd src/3rdparty/haiku-tools/qsystray - if [ "$targetArchitecture" = x86 ];then + if [ "$targetArchitecture" = x86 ]; then make -f Makefile.gcc4 else export PATH="/bin:$PATH" diff --git a/www-client/qupzilla/qupzilla-1.7.x.recipe b/www-client/qupzilla/qupzilla-1.7.x.recipe index e97687ec1..77f35ae31 100644 --- a/www-client/qupzilla/qupzilla-1.7.x.recipe +++ b/www-client/qupzilla/qupzilla-1.7.x.recipe @@ -1,13 +1,13 @@ SUMMARY="QupZilla, a lightweight QtWebKit web browser" DESCRIPTION=" - QupZilla is a lightweight multiplatform web browser based on QtWebKit. +QupZilla is a lightweight multiplatform web browser based on QtWebKit. - It provides: - - A unified interface for bookmarks, history and RSS reading. - - A themeable interface. - - Integrated AdBlock. - - Speed Dial. - - Multiplatform support." +It provides: + - A unified interface for bookmarks, history and RSS reading. + - A themeable interface. + - Integrated AdBlock. + - Speed Dial. + - Multiplatform support." HOMEPAGE="http://www.qupzilla.com" SRC_URI="git://github.com/QupZilla/qupzilla.git" REVISION="2" @@ -57,8 +57,6 @@ BUILD() INSTALL() { - echo "Installing QupZilla..." - mkdir -p ${appsDir}/QupZilla/ mkdir -p ${appsDir}/QupZilla/lib/ @@ -74,7 +72,6 @@ INSTALL() cp -R plugins ${appsDir}/QupZilla/ cp -R themes ${appsDir}/QupZilla/ cp libQupZilla.* ${appsDir}/QupZilla/lib/ - - echo "Linking QupZilla..." + addAppDeskbarSymlink ${appsDir}/QupZilla/qupzilla "QupZilla" }