Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 13 Sep 2016 16:17:21 +0000 (UTC)
From:      John Marino <marino@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r422030 - in head/databases/mysql-connector-c: . files
Message-ID:  <201609131617.u8DGHL0i042999@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marino
Date: Tue Sep 13 16:17:21 2016
New Revision: 422030
URL: https://svnweb.freebsd.org/changeset/ports/422030

Log:
  databases/mysql-connector-c: Fix build for non-base SSL, support LibreSSL
  
  Also, SSL is only a build requirement.
  While here, prevent extract shared libraries from building on DragonFly.
  
  Approved by:	SSL blanket

Added:
  head/databases/mysql-connector-c/files/patch-libmysql_CMakeLists.txt   (contents, props changed)
Modified:
  head/databases/mysql-connector-c/Makefile
  head/databases/mysql-connector-c/files/patch-cmake_ssl.cmake

Modified: head/databases/mysql-connector-c/Makefile
==============================================================================
--- head/databases/mysql-connector-c/Makefile	Tue Sep 13 16:11:28 2016	(r422029)
+++ head/databases/mysql-connector-c/Makefile	Tue Sep 13 16:17:21 2016	(r422030)
@@ -12,11 +12,8 @@ COMMENT=	MySQL database connector for C
 
 LICENSE=	GPLv2
 
-USE_OPENSSL=	yes
-WITH_OPENSSL_PORT=yes
-USES=		cmake:outsource compiler:features mysql
-CMAKE_ARGS+=	-DWITH_SSL=system \
-		-DOPENSSL_INCLUDE_DIR=${LOCALBASE}/include/openssl
+USES=		cmake:outsource compiler:features mysql ssl:build
+CMAKE_ARGS+=	-DOPENSSL_INCLUDE_DIR="${OPENSSLINC}"
 USE_LDCONFIG=	${PREFIX}/lib/${PORTNAME}
 
 PLIST_SUB+=	PORTVERSION=${PORTVERSION}
@@ -27,4 +24,10 @@ PLIST_SUB+=	PORTVERSION=${PORTVERSION}
 CFLAGS+=	-march=i586
 .endif
 
+.if ${SSL_DEFAULT} == base
+CMAKE_ARGS+=	-DWITH_SSL="system"
+.else
+CMAKE_ARGS+=	-DWITH_SSL="${OPENSSLBASE}"
+.endif
+
 .include <bsd.port.post.mk>

Modified: head/databases/mysql-connector-c/files/patch-cmake_ssl.cmake
==============================================================================
--- head/databases/mysql-connector-c/files/patch-cmake_ssl.cmake	Tue Sep 13 16:11:28 2016	(r422029)
+++ head/databases/mysql-connector-c/files/patch-cmake_ssl.cmake	Tue Sep 13 16:17:21 2016	(r422030)
@@ -1,14 +1,24 @@
 --- cmake/ssl.cmake.orig	2015-02-25 21:09:49 UTC
 +++ cmake/ssl.cmake
-@@ -164,9 +164,9 @@ MACRO (MYSQL_CHECK_SSL)
-     # Verify version number. Version information looks like:
-     #   #define OPENSSL_VERSION_NUMBER 0x1000103fL
+@@ -166,17 +166,19 @@ MACRO (MYSQL_CHECK_SSL)
      # Encoded as MNNFFPPS: major minor fix patch status
--    FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h"
-+    FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/opensslv.h"
+     FILE(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h"
        OPENSSL_VERSION_NUMBER
 -      REGEX "^#define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*"
-+      REGEX "^#[\t ]define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*"
++      REGEX "define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x[0-9].*"
      )
      STRING(REGEX REPLACE
        "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9]).*$" "\\1"
+       OPENSSL_MAJOR_VERSION "${OPENSSL_VERSION_NUMBER}"
+     )
+ 
++    # LibreSSL is allowed too
+     IF(OPENSSL_INCLUDE_DIR AND
+        OPENSSL_LIBRARY   AND
+        CRYPTO_LIBRARY      AND
+-       OPENSSL_MAJOR_VERSION STREQUAL "1"
++       (OPENSSL_MAJOR_VERSION STREQUAL "1" OR
++        OPENSSL_MAJOR_VERSION STREQUAL "2")
+       )
+       SET(OPENSSL_FOUND TRUE)
+     ELSE()

Added: head/databases/mysql-connector-c/files/patch-libmysql_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/mysql-connector-c/files/patch-libmysql_CMakeLists.txt	Tue Sep 13 16:17:21 2016	(r422030)
@@ -0,0 +1,11 @@
+--- libmysql/CMakeLists.txt.orig	2015-02-25 21:09:49 UTC
++++ libmysql/CMakeLists.txt
+@@ -254,7 +254,7 @@ IF(NOT DISABLE_SHARED)
+     COMPONENT SharedLibraries)
+   IF(UNIX)
+     # libtool compatability
+-    IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
++    IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD|DragonFly" OR APPLE)
+       SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
+     ELSE()
+       SET(OS_SHARED_LIB_VERSION



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201609131617.u8DGHL0i042999>