Created attachment 146505 [details] new port shar file Seafile is a next-generation open source cloud storage system with advanced support for file syncing, privacy protection and teamwork. Collections of files are called libraries, and each library can be synced separately. A library can be encrypted with a user chosen password. This password is not stored on the server, so even the server admin cannot view a file's contents. Seafile allows users to create groups with file syncing, wiki, and discussion to enable easy collaboration around documents within a team.
Created attachment 146506 [details] test port log
Created attachment 146794 [details] new port shar file - updated from 3.0.4 to 3.1.4, which is latest release version. - fixed issue that desktop client can not connect to server. - fixed one pkgconfig typo.
Please update this patch according to review feedback in bug 193132 and bug 193133 Additionally, Each individual port needs its own unique COMMENT, that make sense on their own, and together as a group. Please update them to suit, and then change each bug summary (title) to reflect the COMMENT
Created attachment 146931 [details] portlint -AC output When I try not to specify .13 for liblibarchive.so, it will try to use system libarchive.so.5 under /usr/lib/libarchive, which causes some linkage issue.
Created attachment 146932 [details] diff to updated shar file
Created attachment 146933 [details] updated shar file
Created attachment 147038 [details] updated shar file
Created attachment 147140 [details] updated shar file - delete one unused file in files/. - clean some comment out patch code.
I see two issues immediately: 1) install target suppresses all commands with "@". Nope, just the mkdir commands are allowd to be suppressed. We *want* these actions to be logged. 2) you refer to libevent2 but I don't see devel/libevent2 specified anywhere. Can you explain that?
(In reply to John Marino from comment #9) > I see two issues immediately: > > 1) install target suppresses all commands with "@". Nope, just the mkdir > commands are allowd to be suppressed. We *want* these actions to be logged. So, what you mean is that if I want to keep everything logged, I should remove "@" for anything else than "mkdir". Am I right? > 2) you refer to libevent2 but I don't see devel/libevent2 specified > anywhere. Can you explain that? It is involved by copy from my other ports. It should be cleaned out.
(In reply to Jingfeng Yan from comment #10) > (In reply to John Marino from comment #9) > > I see two issues immediately: > > > > 1) install target suppresses all commands with "@". Nope, just the mkdir > > commands are allowd to be suppressed. We *want* these actions to be logged. > So, what you mean is that if I want to keep everything logged, I should > remove "@" for anything else than "mkdir". Am I right? I mean "@" is wrong so it must be removed (with the exception of mkdir -- for those it's your preference but they are usually left with "@"). I was just explaining the rationale. > > > 2) you refer to libevent2 but I don't see devel/libevent2 specified > > anywhere. Can you explain that? > It is involved by copy from my other ports. It should be cleaned out. Okay, so please do that.
This can't be patch-ready if PRs that block it aren't patch-ready (or committed) themselves. Plus this needs changing, moving to "open"
Created attachment 148975 [details] overall diff to 0922 shar
Comment on attachment 148975 [details] overall diff to 0922 shar Index: Makefile =================================================================== --- Makefile (revision 25) +++ Makefile (working copy) @@ -10,7 +10,7 @@ LICENSE= GPLv3 BUILD_DEPENDS+= valac:${PORTSDIR}/lang/vala -LIB_DEPENDS+= libsearpc.so:${PORTSDIR}/www/libsearpc \ +LIB_DEPENDS+= libsearpc.so:${PORTSDIR}/devel/libsearpc \ libevhtp.so:${PORTSDIR}/www/libevhtp \ libzdb.so:${PORTSDIR}/databases/libzdb \ libcrypto.so:${PORTSDIR}/security/openssl \ @@ -38,8 +38,8 @@ ACLOCAL_ARGS= -I m4 AUTOMAKE_ARGS= --add-missing --gnu -CPPFLAGS+= -I${LOCALBASE}/include -I${LOCALBASE}/include/event2 -LDFLAGS+= -L${LOCALBASE}/lib -L${LOCALBASE}/lib/event2 +CPPFLAGS+= -I${LOCALBASE}/include +LDFLAGS+= -L${LOCALBASE}/lib MAKE_JOBS_UNSAFE=yes @@ -55,37 +55,37 @@ post-install: @${MKDIR} -m 0755 ${STAGEDIR}${WWWDIR}/seafile/bin @${MKDIR} -m 0755 ${STAGEDIR}${WWWDIR}/seafile/share/doc/seafile - @${INSTALL} -m 0755 ${WRKSRC}/doc/seafile-tutorial.doc \ + ${INSTALL} -m 0755 ${WRKSRC}/doc/seafile-tutorial.doc \ ${STAGEDIR}${WWWDIR}/seafile/share/doc/seafile/ - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/fileserver \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/fileserver \ ${STAGEDIR}${WWWDIR}/seafile/bin/fileserver - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-fsck \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-fsck \ ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-fsck - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seafserv-gc \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seafserv-gc \ ${STAGEDIR}${WWWDIR}/seafile/bin/seafserv-gc - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-fuse \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-fuse \ ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-fuse - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-migrate \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-migrate \ ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-migrate - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-server \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-server \ ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-server - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-server-init \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seaf-server-init \ ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-server-init - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seafile-controller \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seafile-controller \ ${STAGEDIR}${WWWDIR}/seafile/bin/seafile-controller - @${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seafserv-tool \ + ${INSTALL} -m 0755 ${STAGEDIR}${PREFIX}/bin/seafserv-tool \ ${STAGEDIR}${WWWDIR}/seafile/bin/seafserv-tool - @${INSTALL} -m 0755 ${WRKSRC}/scripts/*.py \ + ${INSTALL} -m 0755 ${WRKSRC}/scripts/*.py \ ${STAGEDIR}${WWWDIR} - @${INSTALL} -m 0755 ${WRKSRC}/scripts/*.sh \ + ${INSTALL} -m 0755 ${WRKSRC}/scripts/*.sh \ ${STAGEDIR}${WWWDIR} - @${INSTALL} -d -m 0755 ${WRKSRC}/scripts/upgrade/ \ + ${INSTALL} -d -m 0755 ${WRKSRC}/scripts/upgrade/ \ ${STAGEDIR}${WWWDIR}/upgrade - @${INSTALL} -m 0755 ${WRKSRC}/scripts/upgrade/*py \ + ${INSTALL} -m 0755 ${WRKSRC}/scripts/upgrade/*py \ ${STAGEDIR}${WWWDIR}/upgrade - @${INSTALL} -m 0755 ${WRKSRC}/scripts/upgrade/*sh \ + ${INSTALL} -m 0755 ${WRKSRC}/scripts/upgrade/*sh \ ${STAGEDIR}${WWWDIR}/upgrade - @${CP} -R ${WRKSRC}/scripts/upgrade/sql/ \ + ${CP} -R ${WRKSRC}/scripts/upgrade/sql/ \ ${STAGEDIR}${WWWDIR}/upgrade/sql/ .include <bsd.port.mk> Index: pkg-plist =================================================================== --- pkg-plist (revision 19) +++ pkg-plist (working copy) @@ -94,34 +94,3 @@ %%WWWDIR%%/upgrade/upgrade_2.1_2.2.sh %%WWWDIR%%/upgrade/upgrade_2.2_3.0.sh %%WWWDIR%%/upgrade/upgrade_3.0_3.1.sh -@dirrmtry include/seafile -@dirrmtry %%PYTHON_SITELIBDIR%%/seafile -@dirrmtry %%PYTHON_SITELIBDIR%%/seaserv -%%PORTDOCS%%@dirrmtry %%WWWDIR%%/seafile/%%DOCSDIR%% -@dirrmtry %%WWWDIR%%/seafile/share/doc -@dirrmtry %%WWWDIR%%/seafile/share -@dirrmtry %%WWWDIR%%/upgrade/sql/1.6.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/1.6.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/1.6.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/1.7.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/1.7.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/1.7.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/1.8.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/1.8.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/1.8.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/2.0.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/2.0.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/2.0.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/2.1.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/2.1.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/2.1.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/2.2.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/2.2.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/3.0.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/3.0.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/3.0.0 -@dirrmtry %%WWWDIR%%/upgrade/sql/3.1.0/mysql -@dirrmtry %%WWWDIR%%/upgrade/sql/3.1.0/sqlite3 -@dirrmtry %%WWWDIR%%/upgrade/sql/3.1.0 -@dirrmtry %%WWWDIR%%/upgrade/sql -@dirrmtry %%WWWDIR%%/upgrade
Created attachment 148977 [details] diff to 0922 shar file
Created attachment 148978 [details] test port log
Created attachment 148979 [details] updated shar file
okay, "@${MKDIR} -m 0755" needs to be just "@${MKDIR}" "${INSTALL} -m 0755 ${WRKSRC}/doc/seafile-tutorial.doc" (for example) this is wrong too. first, it's installing this as executable. secondly, you need to use an install macro, e.g. ${INSTALL_PROGRAM} ${INSTALL_DATA} ${INSTALL_MAN} ${INSTALL_SCRIPT} used INSTALL_DATA for non-executable, INSTALL_PROGRAM for executables that can be stripped, INSTALL_SCRIPT for executables that can't be stripped (e.g. bourne shell scripts) search /usr/ports/Mk/bsd.port.mk for documentation about these commands if you need more info.
by the way, you don't use "-m" arguments with those INSTALL_* macros...
okay, see these lines: X libccnet.so:${PORTSDIR}/www/ccnet XRUN_DEPENDS= ccnet-server:${PORTSDIR}/www/ccnet \ X ccnet-init:${PORTSDIR}/www/ccnet \ You don't need to define RUN_DEPENDS when the port is already set for LIB_DEPENDS (LIB_DEPENDS automatically sets run depends) So this would change to: X libccnet.so:${PORTSDIR}/net-mgmt/ccnet (reflects the new category for ccnet)
for these lines: XBUILD_DEPENDS+= valac:${PORTSDIR}/lang/vala XLIB_DEPENDS+= libsearpc.so:${PORTSDIR}/devel/libsearpc \ use "=" not "+=". It is the first time you are defining this. Only use "+=" if it's possible that the variable is already defined and you want to augment it.
change lines like these from X-#ifdef __linux__ X+#if defined(__linux__) || defined(__FreeBSD__) to X-#ifdef __linux__ X+#if defined(__linux__) || defined(__FreeBSD__) || defined(__DragonFly__) (everywhere you add __FreeBSD__ also check for __DragonFly__ ) XCATEGORIES= www That's probably "net-mgmt"
Created attachment 149059 [details] diff to 0922 shar file - changed to new catalog - correct wrongly usage of ${INSTALL} - add other BSD variants in defined tests - properly use "="
Created attachment 149060 [details] updated shar file refer to diff file changes.
now that everything is cleaned up per request, the actual code has come out. e.g. X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/fileserver \ X ${STAGEDIR}${WWWDIR}/seafile/bin/fileserver X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-fsck \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-fsck X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seafserv-gc \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seafserv-gc X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-fuse \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-fuse X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-migrate \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-migrate X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-server \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-server X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-server-init \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-server-init X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seafile-controller \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seafile-controller X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seafserv-tool \ X ${STAGEDIR}${WWWDIR}/seafile/bin/seafserv-tool I see you are installing programs that are already in $STAGEDIR, apparently for the purpose having two names for the same program. Normally sym links used for this. try this: (cd ${STAGEDIR}${PREFIX}/bin/seafile && \ ${LN} -s ../fileserver && \ ${LN} -s ../seaf-fsck && \ ..etc) You could also use .for/.endfor loops but I think the above is more clear This assumes having installing the same program in 2 places is really desired. Is it? Why are these being put in seafile/bin ?
this is probably a mistake: ${INSTALL_DATA} -d ${WRKSRC}/scripts/upgrade/ \ I think you mean ${MKDIR} ${WRKSRC}/scripts/upgrade/ and then wiped out the copy command. Make sure you run testport again after they next shar submission.
(In reply to John Marino from comment #25) > now that everything is cleaned up per request, the actual code has come out. > e.g. > > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/fileserver \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/fileserver > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-fsck \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-fsck > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seafserv-gc \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seafserv-gc > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-fuse \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-fuse > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-migrate \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-migrate > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-server \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-server > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seaf-server-init \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seaf-server-init > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seafile-controller \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seafile-controller > X ${INSTALL_PROGRAM} ${STAGEDIR}${PREFIX}/bin/seafserv-tool \ > X ${STAGEDIR}${WWWDIR}/seafile/bin/seafserv-tool > > > I see you are installing programs that are already in $STAGEDIR, apparently > for the purpose having two names for the same program. Normally sym links > used for this. > > try this: > (cd ${STAGEDIR}${PREFIX}/bin/seafile && \ > ${LN} -s ../fileserver && \ > ${LN} -s ../seaf-fsck && \ > ..etc) > > You could also use .for/.endfor loops but I think the above is more clear > > This assumes having installing the same program in 2 places is really > desired. Is it? Why are these being put in seafile/bin ? The ccnet and seafile build have both cli-, and server binaries, and other libs, etc. Only server binaries are copied to ${WWWDIR}/seafile/bin. When I start porting them, I am using symbolic links. However, it gave me a lot of strange errors. After some debugging, I found that if I use symblic link, it will find it real path. Then, using the real path to determine the seafile installation path by go up directory several levels. In the /proc file or system, it records the server processes running from the real path. If I understand correctly, loader resolves from symbolic links to real path (If this is not true, we can come out other solution). Overall, somehow when I start symblic link "${WWWDIR}/seafile/bin/seafserv-tool", it will directly show I am running ${prefix}/bin/seafserv-tool. seafile-tool then can not figure out where is seafile location by going up. When I look at the released seafile server pkg, they don't do installation, and run from where it is extract. All the bin, and lib are under somewhere similar to ${WWWDIR}/seafile. In other works, even if you have libz, ... in Linux system, all the libs are duplicated. Although I don't prefer to the above solution, I failed when not copying all bins. So, I decided duplicate as small as possible, and copy bins only.
what about using hardlinks? (e.g. ${LN} instead of ${LN} -s). Do you still get the strange errors?
(In reply to John Marino from comment #28) > what about using hardlinks? (e.g. ${LN} instead of ${LN} -s). Do you still > get the strange errors? I will make a try. My mind keep soft all the time. :)
Created attachment 149109 [details] diff to 0922 shar file
Created attachment 149111 [details] portlint -AC log
Created attachment 149112 [details] updated shar file - using ${LN} instead of ${INSTALL} - using for loop to tight the codes - correct catalog
Created attachment 149118 [details] test port log
(In reply to Jingfeng Yan from comment #32) > - using for loop to tight the codes I don't see an advantage to making a list and using it once with a loop versus the way I suggested, so I'm going to got with the (cd .... && ln && ln) approach. I think it's clearer (more quickly) and shorter so...
fyi, I didn't want this: @${MKDIR} ${dir1} @${MKDIR} ${dir2} @${MKDIR} ${dir3} I wanted this: @${MKDIR} ${dir1} \ ${dir2} \ ${dir3} (1 command instead of 3, also easier to read IMO) I am fixing that too.
i reworked the py sh loop to avoid needing a loop (and saved two more commands). The "${CP} -R" line is wrong -- you need to use ${COPYTREE_SHARE} macro here.
is there a particular reason WITH_OPENSSL_PORT is defined? I'm seeing a warning about conflicts with dependencies that use base openssl in the log. Also, this doesn't build on FreeBSD 9 due to missing libiconv linkage.
correction, freebsd 10. It works on 9 according to your log.
i'm having issues with my LN code so I'm going to go back to a modified version of what you submitted.
(In reply to John Marino from comment #37) > is there a particular reason WITH_OPENSSL_PORT is defined? I'm seeing a > warning about conflicts with dependencies that use base openssl in the log. from your own log: /usr/bin/ld: warning: libssl.so.6, needed by /usr/local/lib/libzdb.so, may conflict with libssl.so.8 /usr/bin/ld: warning: libcrypto.so.6, needed by /usr/local/lib/libzdb.so, may conflict with libcrypto.so.8
(In reply to John Marino from comment #40) > (In reply to John Marino from comment #37) > > is there a particular reason WITH_OPENSSL_PORT is defined? I'm seeing a > > warning about conflicts with dependencies that use base openssl in the log. > > from your own log: > > /usr/bin/ld: warning: libssl.so.6, needed by /usr/local/lib/libzdb.so, may > conflict with libssl.so.8 > /usr/bin/ld: warning: libcrypto.so.6, needed by /usr/local/lib/libzdb.so, > may conflict with libcrypto.so.8 It looks like it doesn't matter if you have WITH_OPENSSL_PORT or not, you get the same warning either way, so I'll leave it.
A commit references this bug: Author: marino Date: Thu Nov 6 10:13:11 UTC 2014 New revision: 372218 URL: https://svnweb.freebsd.org/changeset/ports/372218 Log: Add new port net-mgmt/seafile PR: 193134 Submitted by: Jingfeng Yan Seafile is a next-generation open source cloud storage system with advanced support for file syncing, privacy protection and teamwork. Collections of files are called libraries, and each library can be synced separately. A library can be encrypted with a user chosen password. This password is not stored on the server, so even the server admin cannot view a file's contents. Seafile allows users to create groups with file syncing, wiki, and discussion to enable easy collaboration around documents within a team. Changes: head/net-mgmt/Makefile head/net-mgmt/seafile/ head/net-mgmt/seafile/Makefile head/net-mgmt/seafile/distinfo head/net-mgmt/seafile/files/ head/net-mgmt/seafile/files/patch-common_obj-backend-fs.c head/net-mgmt/seafile/files/patch-configure.ac head/net-mgmt/seafile/files/patch-controller_seafile-controller.c head/net-mgmt/seafile/files/patch-daemon_Makefile.am head/net-mgmt/seafile/files/patch-daemon_repo-mgr.c head/net-mgmt/seafile/files/patch-daemon_vc-utils.c head/net-mgmt/seafile/files/patch-lib_Makfile.am head/net-mgmt/seafile/files/patch-lib_libseafile.pc.in head/net-mgmt/seafile/files/patch-lib_net.c head/net-mgmt/seafile/files/patch-lib_utils.c head/net-mgmt/seafile/files/patch-lib_utils.h head/net-mgmt/seafile/files/patch-scripts_setup-seafile.sh head/net-mgmt/seafile/pkg-descr head/net-mgmt/seafile/pkg-plist
by the way, USES+=iconv fixed the problem on FreeBSD 10. I tested this on FreeBSD 10 amd64 and FreeBSD 8.4 i386 in poudriere. I made a few tweaks, you may want to review the final version, thanks.
(In reply to John Marino from comment #43) > by the way, USES+=iconv fixed the problem on FreeBSD 10. > > I tested this on FreeBSD 10 amd64 and FreeBSD 8.4 i386 in poudriere. > > I made a few tweaks, you may want to review the final version, thanks. Again, I really appreciate your help and supports from my first ports (libevhtp). I am glad to continually learn from you. I will look at the changes.
(In reply to John Marino from comment #37) > is there a particular reason WITH_OPENSSL_PORT is defined? I'm seeing a > warning about conflicts with dependencies that use base openssl in the log. > > > Also, this doesn't build on FreeBSD 9 due to missing libiconv linkage. Oops, the poudriere sometime may not capture all the lib missing issue, which maybe I use some "cache" of previous builds. For example, in this batch of working on the libsearpc, I delete port tree and rebuild again, somehow I get error for missing glib. Coming to openssl, I am not sure whether system update /lib/libcrypto.so or not. By default, without openssl, it tries to use it, but some symbols do not exist when I started porting. It should be HMAC_xxxx. Thank you again for other changes. Especially learn from you how to save another loop, and usage of COPYTREE_SHARE. I did use COPYTREE_SHARE before, but I think I have something wrong for destination maybe. Then, I was back to the "CP"...
(In reply to Jingfeng Yan from comment #45) > Oops, the poudriere sometime may not capture all the lib missing issue, > which maybe I use some "cache" of previous builds. For example, in this > batch of working on the libsearpc, I delete port tree and rebuild again, > somehow I get error for missing glib. no, in this case libiconv handling is different between freebsd 9 and 10. I am glad you are learning new techniques!