|Summary:||[PATCH] sysutils/syslog-ng: unbreak make stage|
|Product:||Ports & Packages||Reporter:||Craig Leres <leres>|
|Component:||Individual Port(s)||Assignee:||Cy Schubert <cy>|
|Severity:||Affects Some People|
Description Craig Leres 2014-08-29 23:42:03 UTC
Although tinderbox does not consider the error to be fatal, it's not currently possible to install sysutils/syslog-ng on 9.1-RELEASE because make stage fails: fun 157 # make install ===> Found saved configuration for syslog-ng-3.5.6_1 ===> syslog-ng-3.5.6_3 depends on file: /usr/local/sbin/pkg - found [...] ( cd '/home/fun/u2/src/FreeBSD-current/ports/sysutils/syslog-ng/work/stage/ usr/local/lib/syslog-ng/libtest' && ranlib libtest/libsyslog-ng-test.a ) ranlib: 'libtest/libsyslog-ng-test.a': No such file gmake: *** [install-libtestLIBRARIES] Error 1 gmake: *** [install-am] Error 2 gmake: *** [install-recursive] Error 1 gmake: *** [install] Error 2 gmake: *** [install-strip] Error 2 *** [do-install] Error code 2 Stop in /home/fun/u2/src/FreeBSD-current/ports/sysutils/syslog-ng. *** [stage] Error code 1 Stop in /home/fun/u2/src/FreeBSD-current/ports/sysutils/syslog-ng. Removing files/patch-Makefile.in solves this. Here is a redports log that shows sysutils/syslog-ng building successfully after removing patch-Makefile.in https://redports.org/~leres/20140829232748-71777-238626/syslog-ng-3.5.6_3.log Here's the test ports build dir: https://redports.org/browser/leres/sysutils/syslog-ng
Comment 1 John Marino 2014-08-30 20:17:16 UTC
over to maintainer
Comment 2 Cy Schubert 2014-08-31 04:11:10 UTC
It builds successfully on redports and locally. I will confer with our upline, the author of syslog-ng and who supplied the port. This may only affect 9.1 and earlier. Have you tried syslog-ng-devel? It does not support 8.4 and I suspect it will not support 9.1. Our upline would like to hear about any issues with it as well.
Comment 3 Cy Schubert 2014-08-31 04:36:59 UTC
With the suggested patch in this PR the build fails with: /bin/sh /export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/syslog-ng-3.5.6/install-sh -d /export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage//usr/local/share/syslog-ng/include/scl (cd ./scl; tar cf - system pacct syslogconf rewrite) | (cd /export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage//usr/local/share/syslog-ng/include/scl && tar xf -) chmod -R u+rwX /export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage//usr/local/share/syslog-ng/include/scl /bin/mkdir -p '/export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage/usr/local/include/syslog-ng/filter' install -m 444 lib/filter/filter-expr.h lib/filter/filter-op.h lib/filter/filter-cmp.h lib/filter/filter-in-list.h lib/filter/filter-tags.h lib/filter/filter-netmask.h lib/filter/filter-call.h lib/filter/filter-re.h lib/filter/filter-pri.h lib/filter/filter-pipe.h lib/filter/filter-expr-parser.h '/export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage/usr/local/include/syslog-ng/filter' /bin/mkdir -p '/export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage/usr/local/lib/syslog-ng/libtest' install -m 444 libtest/libsyslog-ng-test.a '/export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage/usr/local/lib/syslog-ng/libtest' ( cd '/export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/stage/usr/local/lib/syslog-ng/libtest' && ranlib libsyslog-ng-test.a ) ranlib: fatal: Failed to open 'libsyslog-ng-test.a' gmake: *** [install-libtestLIBRARIES] Error 70 gmake: *** [install-am] Error 2 gmake: *** [install-recursive] Error 1 gmake: *** [install] Error 2 gmake: *** [install-strip] Error 2 gmake: Leaving directory `/export/wrkdir/amd64/export/home/cy/freebsd/redports/cy/sysutils/syslog-ng/work/syslog-ng-3.5.6' *** Error code 2 Stop. make: stopped in /export/home/cy/freebsd/redports/cy/sysutils/syslog-ng *** Error code 1 Stop. make: stopped in /export/home/cy/freebsd/redports/cy/sysutils/syslog-ng slippy$ Removal of patch-Makefile.in would cause regression.
Comment 4 Craig Leres 2014-09-01 17:15:57 UTC
Here are redports build logs for 10.0-RELEASE and 11-CURRENT that were successful with patch-Makefile.in removed: https://redports.org/~leres/20140901163733-40119-239884/syslog-ng-3.5.6_3.log https://redports.org/~leres/20140901163724-82120-239883/syslog-ng-3.5.6_3.log In particular, there is no error when ranlib is run on libsyslog-ng-test.a: ( cd '/work/a/ports/sysutils/syslog-ng/work/stage/usr/local/lib/syslog-ng/libtest' && ranlib libsyslog-ng-test.a ) /bin/mkdir -p '/work/a/ports/sysutils/syslog-ng/work/stage/usr/local/include/syslog-ng/libtest' There's clearly something different about our home build environments. Do you have a redports log that shows the ranlib error with the patch removed? What release are you running? The redports builds on 9.2-RELEASE, 10.0-RELEASE and 11-CURRENT I've done with the patch removed exactly mirror what I see on my 9.1-RELEASE system; ranlib runs successfully. Here's a redports log from a few weeks ago (3.5.5) with the patch intact that shows the error: https://redports.org/~leres/20140808004908-38165-231231/syslog-ng-3.5.5.log ( cd '/work/a/ports/sysutils/syslog-ng/work/stage/usr/local/lib/syslog-ng/libtest' && ranlib libtest/libsyslog-ng-test.a ) ranlib: warning: libtest/libsyslog-ng-test.a: no such file For whatever reason tinderbox does not consider the ranlib warning fatal. However when you build on a live system, make does consider it fatal and stops the build at that point. The archive is in work/stage/usr/local/lib/syslog-ng/libtest/libsyslog-ng-test.a on my systems and in the 3 most recent redports builds I've done. It looks like on your system it's in .../syslog-ng/libtest/libtest/libsyslog-ng-test.a -- I believe that is the key to why we're not seeing the same results.
Comment 5 commit-hook 2014-09-02 19:40:28 UTC
A commit references this bug: Author: cy Date: Tue Sep 2 19:39:54 UTC 2014 New revision: 367075 URL: http://svnweb.freebsd.org/changeset/ports/367075 Log: Properly fix stage error when building non-root. PR: 193136 Changes: head/sysutils/syslog-ng/Makefile head/sysutils/syslog-ng/files/patch-Makefile.in
Comment 6 Cy Schubert 2014-09-02 19:41:19 UTC
Comment 7 Craig Leres 2014-10-29 18:12:00 UTC
Created attachment 148771 [details] example make output Example make output that shows the error.
Comment 8 Craig Leres 2014-10-29 18:17:14 UTC
This is still broken; see the attachment called trace.log. The problem is with files/patch-Makefile.in. It changes the relative file path used by ranlib. It's easy to see why it doesn't work; it does a cd to [...]/work/stage/usr/ local/lib/syslog-ng/libtest and then tries to ranlib libtest/libsyslog-ng-test.a. Since there is no directory [...]/work/stage/usr/ local/lib/syslog-ng/libtest/libtest/, ranlib fails, exits with a non-zero status and make exits without completing the build. As suggested before, removing this patch fixes the problem.
Comment 9 Cy Schubert 2014-10-29 20:01:42 UTC
Created attachment 148777 [details] Typescript output See typscript output with the patch.
Comment 10 commit-hook 2014-10-29 20:03:55 UTC
A commit references this bug: Author: cy Date: Wed Oct 29 20:03:13 UTC 2014 New revision: 371702 URL: https://svnweb.freebsd.org/changeset/ports/371702 Log: The problem the ranlib patch addressed has since been resolved. Remove it. PR: 193136 Changes: head/sysutils/syslog-ng/Makefile head/sysutils/syslog-ng/files/patch-Makefile.in
Comment 11 commit-hook 2014-10-29 20:05:56 UTC
A commit references this bug: Author: cy Date: Wed Oct 29 20:05:42 UTC 2014 New revision: 371703 URL: https://svnweb.freebsd.org/changeset/ports/371703 Log: Remove patch for resolved issue. Flag -devel port IGNORE until new -devel branch is released. PR: 193136 Changes: head/sysutils/syslog-ng-devel/Makefile head/sysutils/syslog-ng-devel/files/patch-Makefile.in
Comment 12 Cy Schubert 2014-11-12 04:09:28 UTC