diff --git a/.gitignore b/.gitignore index 37de9d6..11d8e21 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ config.status configure DerivedData extra.mk +packages/ObjOpenSSL diff --git a/Makefile b/Makefile index dd36054..5aa5b19 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,23 @@ SUBDIRS = src include buildsys.mk +include extra.mk + +install-extra: + i=packages/ObjOpenSSL; \ + ${INSTALL_STATUS}; \ + if ${INSTALL} -m 644 $$i ${DESTDIR}$$(${OBJFW_CONFIG} --packages-dir)/ObjOpenSSL; then \ + ${INSTALL_OK}; \ + else \ + ${INSTALL_FAILED}; \ + fi + +uninstall-extra: + i=packages/ObjOpenSSL; \ + if test -f ${DESTDIR}$$(${OBJFW_CONFIG} --packages-dir)/ObjOpenSSL; then \ + if rm -f ${DESTDIR}$$(${OBJFW_CONFIG} --packages-dir)/ObjOpenSSL; then \ + ${DELETE_OK}; \ + else \ + ${DELETE_FAILED}; \ + fi \ + fi diff --git a/configure.ac b/configure.ac index 29138b0..17af7b0 100644 --- a/configure.ac +++ b/configure.ac @@ -46,12 +46,15 @@ AS_IF([test x"$enable_static" = x"yes" -o x"$enable_shared" = x"no"], [ AC_ARG_WITH(openssl, AS_HELP_STRING([--with-openssl=PREFIX], [build with OpenSSL in the specified prefix])) -AS_IF([test x"$with_openssl" != x"no"], [ - CPPFLAGS="$CPPFLAGS -I$with_openssl/include" - LIBS="$LIBS -L$with_openssl/lib" +AS_IF([test x"$with_openssl" != x"no" -a x"$with_openssl" != x""], [ + OPENSSL_CPPFLAGS="$CPPFLAGS -I$with_openssl/include" + OPENSSL_LIBS="$LIBS -L$with_openssl/lib" + CPPFLAGS="$CPPFLAGS $OPENSSL_CPPFLAGS" + LIBS="$LIBS $OPENSSL_LIBS" ]) AC_CHECK_LIB(ssl, main, [ + OPENSSL_LIBS="$OPENSSL_LIBS -lssl -lcrypto" LIBS="$LIBS -lssl -lcrypto" ], [ AC_MSG_ERROR(You need openssl >= 1.0.2 installed!) @@ -68,5 +71,8 @@ dnl and add OBJCPPFLAGS to CPPFLAGS, thus we need to AC_SUBST these ourself. AC_SUBST(CPP) AC_SUBST(CPPFLAGS) -AC_CONFIG_FILES([buildsys.mk extra.mk]) +AC_SUBST(OPENSSL_CPPFLAGS) +AC_SUBST(OPENSSL_LIBS) + +AC_CONFIG_FILES([buildsys.mk extra.mk packages/ObjOpenSSL]) AC_OUTPUT diff --git a/extra.mk.in b/extra.mk.in index 649499d..647d27b 100644 --- a/extra.mk.in +++ b/extra.mk.in @@ -2,5 +2,6 @@ OBJOPENSSL_SHARED_LIB = @OBJOPENSSL_SHARED_LIB@ OBJOPENSSL_STATIC_LIB = @OBJOPENSSL_STATIC_LIB@ OBJOPENSSL_FRAMEWORK = @OBJOPENSSL_FRAMEWORK@ +OBJFW_CONFIG = @OBJFW_CONFIG@ OBJFW_FRAMEWORK_LIBS = @OBJFW_FRAMEWORK_LIBS@ OBJFW_LIBS = @OBJFW_LIBS@ diff --git a/packages/ObjOpenSSL.in b/packages/ObjOpenSSL.in new file mode 100644 index 0000000..3d115eb --- /dev/null +++ b/packages/ObjOpenSSL.in @@ -0,0 +1,3 @@ +package_version 1 +CPPFLAGS="$CPPFLAGS @OPENSSL_CPPFLAGS@" +LIBS="@OPENSSL_LIBS@ $LIBS"