Bug 234099 - sysutils/fusefs-webdavfs: Optimize build with poudriere and ccache to avoid runaway processes
Summary: sysutils/fusefs-webdavfs: Optimize build with poudriere and ccache to avoid r...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Eugene Grosbein
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-12-17 14:24 UTC by Kai Knoblich
Modified: 2018-12-17 17:00 UTC (History)
1 user (show)

See Also:
eugen: maintainer-feedback+


Attachments
fusefs-webdavfs-optimize-build-with-poudriere-and-ccache.patch (680 bytes, patch)
2018-12-17 14:24 UTC, Kai Knoblich
kai: maintainer-approval? (eugen)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Kai Knoblich freebsd_committer freebsd_triage 2018-12-17 14:24:47 UTC
Created attachment 200196 [details]
fusefs-webdavfs-optimize-build-with-poudriere-and-ccache.patch

Hello,

attached is a patch that optimizes the build of sysutils/fusefs-webdavfs when poudriere is used together with ccache.

Problem description:
~~~~~~~~~~~~~~~~~~~~
When poudriere is used with ccache the directory of ccache is mounted by default as .ccache in ${WRKDIR}.

If the cache is very large and contains many small files the build of sysutils/fusefs-webdavfs may fail in the patch stage because the 'grep -Flr' command dives also into ${WRKDIR}/.ccache and thus takes too much time to finish.


The attached patch remedies the problem by searching/editing only '*.go' source files in ${WRKDIR}. This also decreases the overall build time.

QA:
~~~
- poudriere (11.2-RELEASE amd64) -> OK
Comment 1 commit-hook freebsd_committer freebsd_triage 2018-12-17 16:09:10 UTC
A commit references this bug:

Author: eugen
Date: Mon Dec 17 16:08:53 UTC 2018
New revision: 487694
URL: https://svnweb.freebsd.org/changeset/ports/487694

Log:
  sysutils/fusefs-webdavfs: update to g20181010

  - mount options: cookie and rwdirops;

  - specify multiple licenses (BSD3CLAUSE, BSD4CLAUSE and MIT)
    for this multi-distfiles port;

  - optimize post-patch target to look only for '*.go' files
    and recurse only to two needed directories;
    this prevents it from descending into .ccache
    directory mounted by poudriere+ccache inside WORKDIR. (*)

  PR:		234099
  Reported by:	Kai <freebsd_ports@k-worx.org> (*)

Changes:
  head/sysutils/fusefs-webdavfs/Makefile
  head/sysutils/fusefs-webdavfs/distinfo
Comment 2 Eugene Grosbein freebsd_committer freebsd_triage 2018-12-17 16:12:07 UTC
Thank you for the report!

I've committed slightly different change so it does not descend into .ccache at all, if it is present.
Comment 3 Kai Knoblich freebsd_committer freebsd_triage 2018-12-17 17:00:08 UTC
(In reply to Eugene Grosbein from comment #2)

Thank you for the quick commit and update!