Created attachment 197257 [details] New port diff Cap'n Proto serialization/RPC system
Comment on attachment 197257 [details] New port diff Remove : +PORTVERSION= 0.7.0 Not needed, new port and portrevision is only needed if a change is made without updating version GH_ACCOUNT goes after USE_GITHUB in which, since GH_ACCOUNT is also the same as portname, no need of it put : +WRKSRC_SUBDIR= c++ + +GNU_CONFIGURE= yes +INSTALL_TARGET= install-strip +TEST_TARGET= check Below USE_GITHUB
(In reply to Nathan from comment #1) I meant PORTREVSION, not to remove PORTVERSION
Created attachment 197258 [details] Updated port diff Thanks for feedback, updated.
Does not build with USES the way it is currently Need to add libtool to USES COMMENT= Should not start with product/application name. It is used for a short description See: https://www.freebsd.org/doc/en/books/porters-handbook/book.html#makefile-comment Also will need to regenerate pkg-plist as it changed it a bit as the .la files are no longer in pkg-plist
Created attachment 197395 [details] Updated diff Updated comment and plist
(In reply to Felix Hanley from comment #5) fails to build in poudriere, see http://people.freebsd.org/~pi/logs/devel__capnproto-112-1540358686.txt Can you investigate what's missing ?
Aha, nathan wrote that it needs USES=libtool and the updated patch did not have that. With libtool it gets over this first problem.
Either it is need to remove *.la from pkg-plist or use libtool:keepla instead of only libtool.
Created attachment 198614 [details] New port diff I have add libtool to USES and removed the .la files from plist.
Testbuilds done, adding lib/libkj-tls-0.7.0.so lib/libkj-tls.a lib/libkj-tls.so on cur/12 -- those are not needed on 11.2. I need to find a way to only add them to the pkg-list on newer versions.
(In reply to Kurt Jaeger from comment #10) Here’s two ways: Use if version: ${ECHO} lib/libkj-tls-0.7.0.so lib/libkj-tls.a lib/libkj-tls.so >> ${TMPPLIST} Other way would be the older options way .if PLIST_SUB= “” .else PLIST_SUB= “@comment” .endif
(In reply to Nathan from comment #11) Also easiet way is to use ${FIND} ${STAGEDIR} -name libkj-tls-0.7.0.so -name libkj-tls.a -name libkj-tls.so | \ ${SED} -e ‘s#^${STAGEDIR}${PREFIX}/##’ >> ${TMPPLIST}
(In reply to Nathan from comment #12) Sorry forgot to add, if you use find method , no need of if statements
We need to fix the root cause issue here instead of tacking on a bunch of workarounds in the port for this. I wonder what's missing on 11.2 that libkj-tls is not being build there. The problem seems to be: checking openssl/ssl.h usability... yes checking openssl/ssl.h presence... yes checking for openssl/ssl.h... yes configure: WARNING: "could not find OpenSSL -- won't build libkj-tls" and /tmp/conftest-17c4d0.o: In function `main': conftest.cpp:(.text+0x5): undefined reference to `OPENSSL_init_ssl' Just skipping this check through CONFIGURE_ARGS= ac_cv_lib_ssl_OPENSSL_init_ssl=yes seems to work and is probably ok since capnproto appears to never directly call OPENSSL_init_ssl itself.
Thanks for the hint with CONFIGURE_ARGS Tested, works.
A commit references this bug: Author: pi Date: Sat Dec 1 13:28:55 UTC 2018 New revision: 486371 URL: https://svnweb.freebsd.org/changeset/ports/486371 Log: New port: devel/capnproto Cap'n Proto is an insanely fast data interchange format and capability-based RPC system. Think JSON, except binary. Or think Protocol Buffers, except faster. WWW: https://capnproto.org/ PR: 231500 Submitted by: Felix Hanley <felix@userspace.com.au> Reviewed by: tobik, w.schwarzenfeld@utanet.at, ndowens@yahoo.com Changes: head/devel/Makefile head/devel/capnproto/ head/devel/capnproto/Makefile head/devel/capnproto/distinfo head/devel/capnproto/pkg-descr head/devel/capnproto/pkg-plist
Committed, thanks!