[Bug 193134] [NEW PORT] net-mgmt/seafile: Framework for writing networked applications

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Nov 5 21:39:36 UTC 2014


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=193134

--- Comment #27 from Jingfeng Yan <yan_jingfeng at yahoo.com> ---
(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.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list