summaryrefslogtreecommitdiff
path: root/Master/tlpkg/TeXLive/TLPSRC.pm
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/TeXLive/TLPSRC.pm')
-rw-r--r--Master/tlpkg/TeXLive/TLPSRC.pm39
1 files changed, 37 insertions, 2 deletions
diff --git a/Master/tlpkg/TeXLive/TLPSRC.pm b/Master/tlpkg/TeXLive/TLPSRC.pm
index 23b3e31521a..c031c5a44d7 100644
--- a/Master/tlpkg/TeXLive/TLPSRC.pm
+++ b/Master/tlpkg/TeXLive/TLPSRC.pm
@@ -82,7 +82,12 @@ sub from_file
if ($line =~ /^ /) {
die "$srcfile: continuation line not allowed in tlpsrc: $line\n";
}
- if ($line =~ /^name\s*([-\w]+(\.win32)?|00texlive.*|0texlive.*|texlive\..*)$/) {
+ # names of source packages can either be
+ # - normal names: ^[-\w]+$
+ # - win32 specific packages: ^[-\w]+\.win32$
+ # - normal texlive specific packages: ^texlive.*\..*$
+ # - configuration texlive specific packages: ^00texlive.*\..*$
+ if ($line =~ /^name\s*([-\w]+(\.win32)?|00texlive.*|texlive\..*)$/) {
$name = "$1";
$started && die("$srcfile: tlpsrc cannot have two name directives");
$started = 1;
@@ -487,7 +492,37 @@ The interpretation of the respective I<values> are:
=item C<name>
-identifies the package, C<value> must consist only of C<[-_a-zA-Z0-9]>.
+identifies the package, C<value> must consist only of C<[-_a-zA-Z0-9]>,
+i.e., with what Perl considers a C<\w>.
+
+There are 3 exceptions to this rule:
+
+=over 12
+
+=item B<name.ARCH>
+
+where B<ARCH> is a supported architecture-os combination.
+The use of this is two-fold: On the one hand packages are split into
+containers for the different architectures to make installations including
+only the necessary binaries possible. On the other hand one can add
+'one-arch-only' packages, often used to deal with the peculiarities of the
+Windows family of systems.
+
+=item B<00texliveSOMETHING>
+
+these packages are used for internal operation
+and storage containers for settings. Besides being the only packages starting
+with B<00texlive> they will never be split into separate arch-packages, and
+containers are never generated for these packages.
+
+=item B<texliveSOME.THING>
+
+(mind the dot in the package name) these packages
+are central TeX Live internal packages and are treated as usual packages
+in (more or less) all respects, but have that extra dot to be sure they
+are different from every package that can possibly appear on CTAN.
+
+=back
=item C<category>