pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/53867 (lang/erlang-doc fails after update)



The following reply was made to PR pkg/53867; it has been noted by GNATS.

From: "David H. Gutteridge" <david%gutteridge.ca@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: pkg/53867 (lang/erlang-doc fails after update)
Date: Sun, 24 Mar 2019 23:23:18 -0400

 I think the best way to handle this is to use a dynamic PLIST for those
 parts of the package that have regularly-changing version numbers
 embedded in their paths. We can't rely on the equivalent versions in
 lang/erlang, as they may vary between the packages. I borrowed from the
 same approach used in databases/couchdb (which deals with the same
 problem). The remaining PLIST file would be accordingly pruned to just
 the entries that aren't part of the dynamically generated list.
 
 (Separately, the DUPLICATE_FILES special handling is no longer
 required, because those duplicates no longer exist in erlang-doc. Also
 separately, couchdb has its own issue at present. If this is good here,
 I can look at that next.)
 
 Index: Makefile
 ===================================================================
 RCS file: /cvsroot/pkgsrc/lang/erlang-doc/Makefile,v
 retrieving revision 1.14
 diff -u -r1.14 Makefile
 --- Makefile    23 Jan 2019 12:46:22 -0000      1.14
 +++ Makefile    25 Mar 2019 03:06:24 -0000
 @@ -19,15 +19,20 @@
  
  USE_TOOLS+=            pax
  
 -# these files are already installed by ../../lang/erlang:
 -DUPLICATE_FILES=       lib/cosEvent-${VERSION.cosEvent}/info
 -DUPLICATE_FILES+=      lib/cosEventDomain-${VERSION.cosEventDomain}/info
 -DUPLICATE_FILES+=      lib/mnesia_session-${VERSION.mnesia_session}/info
 -
  INSTALLATION_DIRS=     lib/erlang
  
 +# The latest Erlang documentation release may not contain the exact same
 +# versioning of internal components as the latest core release at any given
 +# time, so we can't rely on lang/erlang to source those version strings.
 +GENERATE_PLIST=                cd ${DESTDIR}${PREFIX}; \
 +                       ${FIND} ${INSTALLATION_DIRS}/erts-* ${INSTALLATION_DIRS}/lib \
 +                       \( -type f -o -type l \) -print | ${SORT} -u;
 +# Ignore dynamically-generated parts when doing print-PLIST
 +PRINT_PLIST_AWK+=      /^lib\/erlang\/erts-/ { next; }
 +PRINT_PLIST_AWK+=      /^lib\/erlang\/lib\// { next; }
 +
  do-install:
 -       cd ${WRKDIR} && pax ${DUPLICATE_FILES:=-s,%,,} -rw doc erts-* lib ${DESTDIR}${PREFIX}/lib/erlang/
 +       cd ${WRKDIR} && ${PAX} -rw doc erts-* lib ${DESTDIR}${PREFIX}/lib/erlang/
  
  .include "../../lang/erlang/Makefile.versions"
 
 Dave
 
 


Home | Main Index | Thread Index | Old Index