[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