Once again, thanks for writing the new documentation. Here is the outcome of my analysis of the TeX Live packages. In case anyone cares, I have attached the Makefile and the default target's output that underlies part of this analysis. Below is a summary of the numeric results, some observations, consequences/questions, and suggestions for improving the documentation. For my own benefit, I would appreciate responses to the questions and any comments about the rest. If you wish to make use of the suggested documentation, please do. Overall summary of packages (see Makefile for how the numbers were generated): Number Description Criterion 617 TeX packages print/tex-* directories 603 TeX Live packages include texlive/package.mk 14 other TeX packages print/tex-* without texlive/package.mk 518 TeX Live packages with rev. TEXLIVE_REV defined 85 TeX Live packages without rev. TEXLIVE_REV not defined (all could be defined) 30 explicit DIST_SUBDIR TeX Live packages with DIST_SUBDIR defined (none are needed) Observations: - All TeX Live packages seem to have revision information in tlpkg/tlpobj/*tlpobj (only checked ones lacking TEXLIVE_REV assuming others got the information from there in the first place) - All TeX Live packages either have a version (part of CRAN submission form) or could (e.g., YYYYMMDD-based) - relevant texlive/package.mk fragment .if empty(TEXLIVE_REV) DIST_SUBDIR?= ${PKGNAME_NOREV} .else DIST_SUBDIR?= ${PKGBASE:S/-doc$//}-${TEXLIVE_REV} .endif Consequences/questions: - All TeX Live packages could define ${TEXLIVE_REV} + None need a comment mentioning "TeX Live Revision" - All TeX Live packages could have DIST_SUBDIR defined consistently by the second branch in package.mk + None need an explicit DIST_SUBDIR + First branch in package.mk is probably useful to catch mistakes, but why ${PKGNAME_NOREV} instead of ${PKGBASE:S/-doc//}? If the latter is ok, why not replace the entire conditional with the following: DIST_SUBDIR?= ${PKGBASE:S/-doc$//}${TEXLIVE_REV:D-${TEXLIVE_REV}} + Why not emit a warning of some kind if DIST_SUBDIR is defined? - Some examples of oddities in existing packages: + tex-a4wide/Makefile:PKGNAME= tex-${DISTNAME}-2010 # why not YYYYMMDD? + tex-amscls/Makefile:PKGNAME= tex-${DISTNAME}-2010.20248 # why mix of date/revision? - What are the consequences of switching to a consistent DIST_SUBDIR definition based entirely on TEXLIVE_REV? Suggestions for modifying the documentation patch: Note to package developers: * When creating/updating a TeX package, please set TEXLIVE_USE_CTAN either in mk.conf or in the environment. This will enable proper updating of the distinfo via the "makesum" target. Additionally, be sure to define TEXLIVE_REV (see below) and include the file "../../print/texlive/package.mk" in the package Makefile. Note also that some TeX Live packages have versions (e.g., date-based) containing hyphens (-); the hyphens should be removed in the package Makefile. TEXLIVE_REV A string used to define DIST_SUBDIR that is useful to differentiate among distfiles because ${DISTNAME} will generally not include a revision number. The value of TEXLIVE_REV should be taken from the "revision" line present for each package in ${WRKSRC}/tlpkg/tlpobj/${DISTNAME}.tlpobj. I hope this is helpful. Thanks for any input you can offer. Cheers, Brook
Attachment:
Makefile
Description: Binary data
Attachment:
texlive-packages.out
Description: Binary data