Compare commits

...

7 Commits

9 changed files with 177 additions and 32 deletions

View File

@ -11,6 +11,7 @@ dev-db
dev-dotnet
dev-games
dev-haskell
dev-java
dev-lang
dev-libs
dev-ocaml

View File

@ -2,4 +2,4 @@ layout = exheres
eapi_when_unknown = exheres-0
eapi_when_unspecified = exheres-0
profile_eapi_when_unspecified = exheres-0
masters = arbor ocaml-unofficial
masters = arbor ocaml-unofficial java

View File

@ -0,0 +1,46 @@
From 4f94810a75ba89936c0b67ace13ff0e171f3649e Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Sun, 16 Sep 2018 19:13:05 +0800
Subject: [PATCH 1/2] Fix build with LibreSSL
This check is useless. If the library depends on specific
features of SSL, it must check for those. Checking for
version is not reliable and breaks LibreSSL compatibility.
---
cdk/cmake/ssl.cmake | 6 +-----
cdk/foundation/connection_openssl.cc | 2 +-
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/cdk/cmake/ssl.cmake b/cdk/cmake/ssl.cmake
index 494f0fe..1e7adca 100644
--- a/cdk/cmake/ssl.cmake
+++ b/cdk/cmake/ssl.cmake
@@ -251,11 +251,7 @@ function(MYSQL_CHECK_SSL)
return()
endif()
- if(NOT OPENSSL_VERSION_MAJOR EQUAL 1)
- message(SEND_ERROR "OpenSSL version 1.x is required but version ${OPENSSL_VERSION} was found")
- else()
- message(STATUS "Using OpenSSL version: ${OPENSSL_VERSION}")
- endif()
+ message(STATUS "Using OpenSSL version: ${OPENSSL_VERSION}")
#
# We assume that FindOpenSSL finds 2 libraries in this order.
diff --git a/cdk/foundation/connection_openssl.cc b/cdk/foundation/connection_openssl.cc
index f7fe28c..200d710 100644
--- a/cdk/foundation/connection_openssl.cc
+++ b/cdk/foundation/connection_openssl.cc
@@ -188,7 +188,7 @@ static void throw_ssl_error(SSL* tls, int err)
case SSL_ERROR_WANT_CONNECT:
case SSL_ERROR_WANT_ACCEPT:
case SSL_ERROR_WANT_X509_LOOKUP:
-# if OPENSSL_VERSION_NUMBER >= 0x10100000L
+# if OPENSSL_VERSION_NUMBER >= 0x10100000L && !defined(LIBRESSL_VERSION_NUMBER)
case SSL_ERROR_WANT_ASYNC:
case SSL_ERROR_WANT_ASYNC_JOB:
# endif
--
2.19.0

View File

@ -0,0 +1,25 @@
From 3594a934f7f142efeadaea41ee5be53983795899 Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Sun, 16 Sep 2018 19:47:03 +0800
Subject: [PATCH 2/2] Don't call ar directly, use CMAKE_AR
---
cdk/cmake/libutils/merge_archives.cmake.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cdk/cmake/libutils/merge_archives.cmake.in b/cdk/cmake/libutils/merge_archives.cmake.in
index fc58df4..e56c4b4 100644
--- a/cdk/cmake/libutils/merge_archives.cmake.in
+++ b/cdk/cmake/libutils/merge_archives.cmake.in
@@ -101,7 +101,7 @@ else()
# extract object from the library ...
execute_process(
- COMMAND ar x ../lib.a ${obj}
+ COMMAND ${CMAKE_AR} x ../lib.a ${obj}
WORKING_DIRECTORY ${MERGELIBS_DIR}/${lib}/objs
)
--
2.19.0

View File

@ -1,11 +1,13 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
CMAKE_SOURCE=${WORK}-src
require cmake [ api=2 ]
SUMMARY="MySQL database connector for C++ (mimics JDBC 4.0 API)"
HOMEPAGE="http://dev.mysql.com/downloads/connector/cpp/"
DOWNLOADS="https://dev.mysql.com/get/Downloads/Connector-C++/${PNV}.tar.gz"
DOWNLOADS="https://dev.mysql.com/get/Downloads/Connector-C++/${PNV}-src.tar.gz"
LICENCES="GPL-2"
SLOT="0"
@ -25,26 +27,27 @@ DEPENDENCIES="
BUGS_TO="hasufell@posteo.de"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/0001-Fix-build-with-LibreSSL.patch
"${FILES}"/0002-Don-t-call-ar-directly-use-CMAKE_AR.patch
)
src_configure() {
CMAKE_SRC_CONFIGURE_PARAMS=(
-DINSTALL_DOCS="/usr/share/doc/${PNVR}"
-DMYSQLCPPCONN_BUILD_EXAMPLES=OFF
-DMYSQLCPPCONN_ICU_ENABLE=OFF
-DMYSQL_CXX_LINKAGE=0
-DMYSQL_INCLUDE_DIR="$(mysql_config --variable=pkgincludedir)"
-DUSE_MYSQLCPPCONN_GCOV_ENABLE=OFF
-DUSE_MYSQLCPPCONN_TRACE_ENABLE=OFF
-DCMAKE_BUILD_TYPE=Release
-DINSTALL_DOC_DIR="/usr/share/doc/${PNVR}"
-DINSTALL_LIB_DIR="lib"
-DWITH_JDBC=ON
)
cmake_src_configure
}
src_prepare() {
edo sed -i \
-e '/ADD_SUBDIRECTORY(test/d' \
-e 's#DOC_DESTINATION "."#DOC_DESTINATION ${INSTALL_DOCS}#' \
"${CMAKE_SOURCE}"/CMakeLists.txt
cmake_src_prepare
}
src_install() {
cmake_src_install
edo rm "${IMAGE}"/usr/$(exhost --target)/BUILDINFO.txt
}

View File

@ -7,8 +7,7 @@ require cmake [ api=2 ]
SUMMARY="MySQL Workbench"
HOMEPAGE="https://www.mysql.com/products/workbench/"
DOWNLOADS="https://dev.mysql.com/get/Downloads/MySQLGUITools/${PN}-community-${PV}-src.tar.gz
http://www.antlr3.org/download/antlr-3.4-complete.jar"
DOWNLOADS="https://dev.mysql.com/get/Downloads/MySQLGUITools/${PN}-community-${PV}-src.tar.gz"
LICENCES="GPL-2"
SLOT="0"
@ -27,16 +26,18 @@ DEPENDENCIES="
dev-cpp/ctemplate
dev-cpp/libsigc++:2
dev-db/libiodbc
dev-db/mysql-connector-c++
dev-db/mysql-connector-c++[>=${PV}]
dev-db/vsqlite++
dev-java/antlr:4
dev-lang/python:2.7[sqlite]
dev-libs/antlr4-cpp
dev-libs/boost
dev-libs/glib:2
dev-libs/libsecret:1
dev-libs/libxml2:2.0
dev-libs/pcre
dev-libs/tinyxml
dev-python/paramiko[python_abis:2.7]
dev-python/pexpect[python_abis:2.7]
dev-python/pycairo[python_abis:2.7]
gnome-bindings/atkmm:1.6
gnome-bindings/glibmm:2.4
@ -44,6 +45,7 @@ DEPENDENCIES="
gnome-bindings/pangomm:1.4
gnome-desktop/libgnome-keyring
gnome-platform/libglade:2
net-libs/libssh
sci-libs/gdal
virtual/mysql
x11-dri/mesa
@ -59,9 +61,6 @@ DEPENDENCIES="
BUGS_TO="hasufell@posteo.de"
src_prepare() {
edo install -D "${FETCHEDDIR}"/antlr-3.4-complete.jar \
"${WORKBASE}"/linux-res/bin/antlr-3.4-complete.jar
# fix gdal includes
edo sed -i \
-e 's|#include <gdal/|#include <|' \
@ -80,6 +79,16 @@ src_prepare() {
-e 's/\-Werror//' \
"${CMAKE_SOURCE}"/CMakeLists.txt
# fix mysql-connector-c++ detection
edo sed -i \
-e '/MySQLCppConn_INCLUDE_DIR NAMES/s#/usr/include#/usr/include/jdbc#' \
"${CMAKE_SOURCE}"/build/cmake/Modules/FindMySQLCppConn.cmake
# fix antl4 jar detection
edo sed -i \
-e '/ANTLR_JAR_FILENAME/s/antlr-4.7.1-complete.jar/antlr-complete.jar/' \
"${CMAKE_SOURCE}"/CMakeLists.txt
cmake_src_prepare
}
@ -88,6 +97,8 @@ src_configure() {
-DIODBC_CONFIG_PATH="/usr/$(exhost --target)/bin/iodbc-config"
-DLIB_INSTALL_DIR="/usr/$(exhost --target)/lib"
-DSHARE_INSTALL_PREFIX=/usr/share
-DANTLR_JAR_PATH="/usr/share/antlr-4"
-DANTLR_JAR_FILENAME="antlr-complete.jar"
)
cmake_src_configure

View File

@ -0,0 +1,25 @@
# Copyright 2018 Julian Ospald <hasufell@posteo>
# Distributed under the terms of the GNU General Public License v2
require java
SUMMARY="A powerful parser generator for reading, processing, executing, or translating structured text or binary files (Java target)"
HOMEPAGE="http://www.antlr.org"
DOWNLOADS="http://www.antlr.org/download/antlr-${PV}-complete.jar"
LICENCES="BSD-3"
SLOT="4"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
"
BUGS_TO="hasufell@posteo"
WORK=${WORKBASE}
src_install() {
insinto /usr/share/${PN}-${SLOT}
newins "${FETCHEDDIR}"/antlr-${PV}-complete.jar antlr-complete.jar
}

View File

@ -0,0 +1,36 @@
# Copyright 2018 Julian Ospald <hasufell@posteo>
# Distributed under the terms of the GNU General Public License v2
WORK=${WORKBASE}
require cmake [ api=2 ]
SUMMARY="A powerful parser generator for reading, processing, executing, or translating structured text or binary files (cpp target)"
HOMEPAGE="http://www.antlr.org"
DOWNLOADS="http://www.antlr.org/download/antlr4-cpp-runtime-${PV}-source.zip
http://www.antlr.org/download/antlr-${PV}-complete.jar"
LICENCES="BSD-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
dev-java/antlr:4
sys-apps/util-linux
"
BUGS_TO="hasufell@posteo.de"
src_configure() {
CMAKE_SRC_CONFIGURE_PARAMS=(
-DANTLR_JAR_LOCATION="/usr/share/antlr-4/antlr-complete.jar"
-DWITH_DEMO=False
)
cmake_src_configure
}

View File

@ -26,27 +26,25 @@ DEPENDENCIES="
build:
dev-util/patchelf
run:
app-arch/bzip2
dev-lang/python:*[>=3]
dev-libs/glib:2
dev-libs/libffi
dev-libs/libxml2:2.0
dev-libs/libxslt
dev-libs/popt
media-libs/fontconfig
media-libs/freetype:2
net-misc/wget
sys-libs/ncurses[compat-libs]
sys-libs/zlib
x11-dri/mesa
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libXinerama
x11-libs/libXxf86vm
x11-libs/pango[X]
x11-libs/libXcomposite
x11-libs/libXext
x11-libs/libXrender
x11-libs/libxcb
x11-libs/qtbase:5
x11-libs/qtdeclarative:5
x11-libs/qtwebkit:5
x11-misc/wmctrl
x11-themes/hicolor-icon-theme
providers:ijg-jpeg? ( media-libs/jpeg:= )
providers:jpeg-turbo? ( media-libs/libjpeg-turbo )
"
BUGS_TO="hasufell@posteo"