tech-pkg archive

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

Re: wip/mk/git-package.mk cleanups



Attached is a re-roll (v2) of the patches.  Changes from v1:

  * create NO_CVS_CACHE, NO_GIT_CACHE, and NO_HG_CACHE for consistency
    with NO_SVN_CACHE (so users can easily disable caching)

  * create NO_{CVS,GIT,HG,SVN}_CACHE.${id} so that packages can
    disable caching

  * don't inline _GIT_EXTRACT_CACHED.${repo} and
    _GIT_CREATE_CACHE.${repo} in the do-git-extract target

  * extend the git-package.mk changes to the other <vc>-package.mk
    files (where applicable) to keep them consistent

  * fix the CVS checkout directory (it was checking out to ${repo}
    instead of ${CVS_MODULE.${repo}}, although these two are the same
    for all buildable packages anyway so it wasn't actually causing any
    problems)

  * other minor cleanups

>>> +#          If ${WRKSRC} doesn't exist by the time post-extract is
>>> +#          run, ${WRKSRC} will be created as a symlink pointing
>>> +#          to ${GIT_MODULE.${GIT_REPOSITORIES:[1]}}.
>>> +#
>>>
>>> I'm afraid, it doesn't clean anything up,
>>
>> Sure it does:  It eliminates the need to set
>> WRKSRC=${WRKDIR}/${GIT_MODULE.foo} in the package Makefile.
> 
> Symlinks don't clean anything up, they complicate things rather,
> even though it isn't clear from experience on platforms like NetBSD.
> In particular, some FreeBSD tools (e.g. pax that is actively promoted by
> POSIX and pkgsrc) behave subtly differently in presense of symlinks.
> Please, don't introduce them here. At least not until consequences are
> well understood.

I believe that the risks associated with creating the symlinks are lower
than the risks associated with overriding WRKSRC in every package that
uses {cvs,git,hg,svn}-package.mk.  Note that the symlink and its
referent are siblings in the filesystem hierarchy, so any relative paths
spanning both sides of WRKSRC shouldn't be a problem.

If a symlink causes a problem in a particular package, the package
maintainer can still set WRKSRC (as required without these patches) to
prevent the symlink from being created.

I'd like to hear more from the community about this issue (especially
alternative suggestions) before I exclude the symlink feature.

Thanks,
Richard
>From ed00054a0d934b2059b28ae8e806fa74a12ab86c Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sat, 3 May 2014 23:31:12 -0400
Subject: [PATCH 01/13] reformat the variable documentation for consistency

Adjust indentation in documenting comments to match cvs-package.mk.
---
 mk/git-package.mk | 22 +++++++++++++---------
 mk/hg-package.mk  | 18 +++++++++---------
 2 files changed, 22 insertions(+), 18 deletions(-)

diff --git a/mk/git-package.mk b/mk/git-package.mk
index 137b0cf..992af4e 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -1,22 +1,26 @@
 # This file provides simple access to git repositories, so that packages
 # can be created from git instead of from released tarballs.
 #
+# === User-settable variables ===
+#
+# === Package-settable variables ===
+#
 # A package using this file shall define the following variables:
 #
-#      GIT_REPOSITORIES
-#              A list of unique identifiers /id/ for which appropriate
-#              GIT_REPO must be defined.
+# GIT_REPOSITORIES
+#      A list of unique identifiers /id/ for which appropriate
+#      GIT_REPO must be defined.
 #
-#      GIT_REPO.${id}
-#              The git repository
+# GIT_REPO.${id}
+#      The git repository
 #
 # It may define the following variables:
 #
-#      GIT_TAG
-#              The tag to check out (default: HEAD).
+# GIT_TAG
+#      The tag to check out (default: HEAD).
 #
-#      GIT_TAG.${id}
-#              Overridable GIT tag for a repository.
+# GIT_TAG.${id}
+#      Overridable GIT tag for a repository.
 #
 
 .if !defined(_PKG_MK_GIT_PACKAGE_MK)
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index 31102e9..e2dd9f7 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -12,20 +12,20 @@
 #
 # A package using this file shall define the following variables:
 #
-#      HG_REPOSITORIES
-#              A list of unique identifiers /id/ for which appropriate
-#              HG_REPO must be defined.
+# HG_REPOSITORIES
+#      A list of unique identifiers /id/ for which appropriate
+#      HG_REPO must be defined.
 #
-#      HG_REPO.${id}
-#              The Mercurial repository
+# HG_REPO.${id}
+#      The Mercurial repository
 #
 # It may define the following variables:
 #
-#      HG_TAG
-#              The HG tag to check out (default: HEAD).
+# HG_TAG
+#      The HG tag to check out (default: HEAD).
 #
-#      HG_TAG.${id}
-#              Overridable HG tag for a repository.
+# HG_TAG.${id}
+#      Overridable HG tag for a repository.
 #
 
 .if !defined(_PKG_MK_HG_PACKAGE_MK)
-- 
1.9.2

>From 15bf2055650a50acea137d88d38360012ccea7cd Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Thu, 27 Feb 2014 15:38:11 -0500
Subject: [PATCH 02/13] document {GIT,HG,SVN}_MODULE.${id}

---
 mk/git-package.mk | 7 +++++++
 mk/hg-package.mk  | 7 +++++++
 mk/svn-package.mk | 4 +++-
 3 files changed, 17 insertions(+), 1 deletion(-)

diff --git a/mk/git-package.mk b/mk/git-package.mk
index 992af4e..e6e9d08 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -22,6 +22,13 @@
 # GIT_TAG.${id}
 #      Overridable GIT tag for a repository.
 #
+# GIT_MODULE.${id}
+#      Name of the subdirectory in ${WRKDIR} containing the cloned
+#      repository.  This is also used to name the clone cache tarball
+#      stored in ${DISTDIR}.
+#
+#      Defaults to ${id}.
+#
 
 .if !defined(_PKG_MK_GIT_PACKAGE_MK)
 _PKG_MK_GIT_PACKAGE_MK=        # defined
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index e2dd9f7..9863b0d 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -27,6 +27,13 @@
 # HG_TAG.${id}
 #      Overridable HG tag for a repository.
 #
+# HG_MODULE.${id}
+#      Name of the subdirectory in ${WRKDIR} containing the cloned
+#      repository.  This is also used to name the clone cache tarball
+#      stored in ${DISTDIR}.
+#
+#      Default value: ${id}
+#
 
 .if !defined(_PKG_MK_HG_PACKAGE_MK)
 _PKG_MK_HG_PACKAGE_MK= # defined
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index ac3d5f7..0d3e780 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -24,7 +24,9 @@
 #      if applicable.
 #
 # SVN_MODULE.${id}
-#      The SVN module to check out.
+#      Name of the subdirectory in ${WRKDIR} containing the
+#      checked-out code.  This is also used to name the clone cache
+#      tarball stored in ${DISTDIR}.
 #
 #      Default value: ${id}
 #
-- 
1.9.2

>From eebf1e89884d9f300503b441998f41075efa6e44 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sun, 4 May 2014 01:52:23 -0400
Subject: [PATCH 03/13] fix CVS checkout destination directory

Put the checked out code in ${CVS_MODULE.${repo}} instead of ${repo}
because _CVS_CREATE_CACHE.${repo} expects it to be there.

The only package that is affected by this change is wip/mplayer, which
hasn't been touched in 8 years and already needs serious work before
it can build successfully.
---
 mk/cvs-package.mk | 6 ++++--
 mplayer/Makefile  | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index 180920f..ed069f9 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -28,7 +28,9 @@
 #              :pserver:anoncvs:@anoncvs.example.com:/cvsroot/project
 #
 # CVS_MODULE.${id}
-#      The CVS module to check out.
+#      The CVS module to check out.  This is also the name of the
+#      directory under ${WRKDIR} that will contain the checked-out
+#      code.
 #
 #      Default value: ${id}
 #
@@ -214,7 +216,7 @@ do-cvs-extract: .PHONY
        ${SETENV} ${_CVS_ENV}                                           \
          ${_CVS_CMD} ${_CVS_FLAGS} -d ${CVS_ROOT.${repo}:Q}            \
            checkout ${_CVS_CHECKOUT_FLAGS} ${_CVS_TAG_FLAG.${repo}}    \
-             -d ${repo} ${CVS_MODULE.${repo}:Q};                               
\
+             ${CVS_MODULE.${repo}:Q};                                  \
        ${_CVS_CREATE_CACHE.${repo}}
 .endfor
 
diff --git a/mplayer/Makefile b/mplayer/Makefile
index 2cce276..debb294 100644
--- a/mplayer/Makefile
+++ b/mplayer/Makefile
@@ -27,7 +27,7 @@ INSTALLATION_DIRS+=   bin
 do-fetch:
 
 post-extract:
-       ${MV} ${WRKDIR}/ffmpeg/libav* ${WRKDIR}/mplayer/
+       ${MV} ${WRKDIR}/ffmpeg/libav* ${WRKDIR}/main/
 
 do-install:
        ${INSTALL_PROGRAM} ${WRKSRC}/mplayer ${PREFIX}/bin
-- 
1.9.2

>From ca088189d65488445e24751f6772d22fe91305b4 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Thu, 27 Feb 2014 15:39:13 -0500
Subject: [PATCH 04/13] fix Git clone destination directory

Before, it was cloning into whatever directory 'git clone' wanted to
use and assumed that the resulting directory name matched
${GIT_MODULE.${_repo_}}.  Now 'git clone' is forced to clone into
${GIT_MODULE.${_repo_}} so that they are guaranteed to match.
---
 mk/git-package.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/mk/git-package.mk b/mk/git-package.mk
index e6e9d08..ba1b7f1 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -134,7 +134,8 @@ do-git-extract:
        ${SETENV} ${_GIT_ENV}                                           \
                ${_GIT_CMD} clone                                       \
                        ${_GIT_FLAGS}                                   \
-                       ${GIT_REPO.${_repo_}:Q};                        \
+                       ${GIT_REPO.${_repo_}:Q}                         \
+                       ${GIT_MODULE.${_repo_}:Q};                      \
        ${_GIT_CREATE_CACHE.${_repo_}}
 .endfor
 
-- 
1.9.2

>From 0572eaa7b0ea7d798d77d6791630405ede2c51c6 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sun, 4 May 2014 02:49:01 -0400
Subject: [PATCH 05/13] use :Q modifier to escape special shell characters

---
 mk/cvs-package.mk | 14 +++++++-------
 mk/git-package.mk |  8 ++++----
 mk/hg-package.mk  | 11 ++++++-----
 mk/svn-package.mk | 14 +++++++-------
 4 files changed, 24 insertions(+), 23 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index ed069f9..a6b976a 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -178,9 +178,9 @@ _CVS_DISTFILE.${repo}=      
${PKGBASE}-${CVS_MODULE.${repo}}-${_CVS_TAG.${repo}}.tar.
 
 #   command to extract cache file
 _CVS_EXTRACT_CACHED.${repo}=   \
-       if [ -f ${_CVS_DISTDIR}/${_CVS_DISTFILE.${repo}:Q} ]; then              
\
+       if [ -f ${_CVS_DISTDIR:Q}/${_CVS_DISTFILE.${repo}:Q} ]; then    \
          ${STEP_MSG} "Extracting cached CVS archive 
"${_CVS_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_CVS_DISTDIR}/${_CVS_DISTFILE.${repo}:Q} | pax -r;       
\
+         gzip -d -c ${_CVS_DISTDIR:Q}/${_CVS_DISTFILE.${repo}:Q} | pax -r;     
\
          exit 0;                                                       \
        fi
 
@@ -188,24 +188,24 @@ _CVS_EXTRACT_CACHED.${repo}=      \
 _CVS_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached CVS archive 
"${_CVS_DISTFILE.${repo}:Q}"."; \
        ${MKDIR} ${_CVS_DISTDIR:Q};                                     \
-       pax -w ${CVS_MODULE.${repo}:Q} | gzip > 
${_CVS_DISTDIR}/${_CVS_DISTFILE.${repo}:Q}
+       pax -w ${CVS_MODULE.${repo}:Q} | gzip > 
${_CVS_DISTDIR:Q}/${_CVS_DISTFILE.${repo}:Q}
 .endfor
 
 pre-extract: do-cvs-extract
 
 do-cvs-extract: .PHONY
 .for repo in ${CVS_REPOSITORIES}
-       ${RUN} cd ${WRKDIR};                                            \
-       if [ ! -d ${_CVS_DISTDIR} ]; then mkdir -p ${_CVS_DISTDIR:Q}; fi;       
\
+       ${RUN} cd ${WRKDIR:Q};                                          \
+       if [ ! -d ${_CVS_DISTDIR:Q} ]; then mkdir -p ${_CVS_DISTDIR:Q}; fi;     
\
        ${_CVS_EXTRACT_CACHED.${repo}};                                 \
-       p="$$(cd ${_CVS_DISTDIR} && ls -t ${PKGBASE}-${CVS_MODULE.${repo}}-* | 
head -n 1)";     \
+       p="$$(cd ${_CVS_DISTDIR:Q} && ls -t 
${PKGBASE:Q}-${CVS_MODULE.${repo}:Q}-* | head -n 1)";       \
        if [ -n "$$p" ]; then                                           \
          ${STEP_MSG} "Extracting cached CVS archive \"""$$p\".";       \
          pax -r -z -f ${_CVS_DISTDIR:Q}/"$$p";                         \
        fi;                                                             \
        case ${CVS_ROOT.${repo}:Q} in                                   \
          :pserver:*)                                                   \
-           [ -f ${_CVS_PASSFILE} ] || ${TOUCH} ${_CVS_PASSFILE};       \
+           [ -f ${_CVS_PASSFILE:Q} ] || ${TOUCH} ${_CVS_PASSFILE:Q};   \
            ${STEP_MSG} "Logging in to "${CVS_ROOT.${repo}:Q}".";       \
            ${SETENV} ${_CVS_ENV} ${_CVS_CMD} ${_CVS_FLAGS}             \
                -d ${CVS_ROOT.${repo}:Q} login                          \
diff --git a/mk/git-package.mk b/mk/git-package.mk
index ba1b7f1..dee199c 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -110,9 +110,9 @@ _GIT_DISTFILE.${repo}=      
${PKGBASE}-${GIT_MODULE.${repo}}-${_GIT_TAG.${repo}}.tar.
 
 #   command to extract cache file
 _GIT_EXTRACT_CACHED.${repo}=   \
-       if [ -f ${_GIT_DISTDIR}/${_GIT_DISTFILE.${repo}:Q} ]; then              
\
+       if [ -f ${_GIT_DISTDIR:Q}/${_GIT_DISTFILE.${repo}:Q} ]; then    \
          ${STEP_MSG} "Extracting cached GIT archive 
"${_GIT_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_GIT_DISTDIR}/${_GIT_DISTFILE.${repo}:Q} | pax -r;       
\
+         gzip -d -c ${_GIT_DISTDIR:Q}/${_GIT_DISTFILE.${repo}:Q} | pax -r;     
\
          exit 0;                                                       \
        fi
 
@@ -120,7 +120,7 @@ _GIT_EXTRACT_CACHED.${repo}=        \
 _GIT_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached GIT archive 
"${_GIT_DISTFILE.${repo}:Q}"."; \
        ${MKDIR} ${_GIT_DISTDIR:Q};                                     \
-       pax -w ${GIT_MODULE.${repo}:Q} | gzip > 
${_GIT_DISTDIR}/${_GIT_DISTFILE.${repo}:Q}
+       pax -w ${GIT_MODULE.${repo}:Q} | gzip > 
${_GIT_DISTDIR:Q}/${_GIT_DISTFILE.${repo}:Q}
 .endfor
 
 pre-extract: do-git-extract
@@ -128,7 +128,7 @@ pre-extract: do-git-extract
 .PHONY: do-git-extract
 do-git-extract:
 .for _repo_ in ${GIT_REPOSITORIES}
-       ${RUN} cd ${WRKDIR};                                            \
+       ${RUN} cd ${WRKDIR:Q};                                          \
        if [ ! -d ${_GIT_DISTDIR:Q} ]; then mkdir -p ${_GIT_DISTDIR:Q}; fi;     
\
        ${_GIT_EXTRACT_CACHED.${_repo_}};                               \
        ${SETENV} ${_GIT_ENV}                                           \
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index 9863b0d..6a419df 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -126,9 +126,9 @@ _HG_DISTFILE.${repo}=       
${PKGBASE}-${HG_MODULE.${repo}}-${_HG_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
 _HG_EXTRACT_CACHED.${repo}=    \
-       if [ -f ${_HG_DISTDIR}/${_HG_DISTFILE.${repo}:Q} ]; then                
\
+       if [ -f ${_HG_DISTDIR:Q}/${_HG_DISTFILE.${repo}:Q} ]; then      \
          ${STEP_MSG} "Extracting cached Mercurial archive 
"${_HG_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_HG_DISTDIR}/${_HG_DISTFILE.${repo}:Q} | pax -r; \
+         gzip -d -c ${_HG_DISTDIR:Q}/${_HG_DISTFILE.${repo}:Q} | pax -r;       
\
          exit 0;                                                       \
        fi
 
@@ -136,7 +136,7 @@ _HG_EXTRACT_CACHED.${repo}= \
 _HG_CREATE_CACHE.${repo}=      \
        ${STEP_MSG} "Creating cached Mercurial archive 
"${_HG_DISTFILE.${repo}:Q}"."; \
        ${MKDIR} ${_HG_DISTDIR:Q};                                      \
-       pax -w ${HG_MODULE.${repo}:Q} | gzip > 
${_HG_DISTDIR}/${_HG_DISTFILE.${repo}:Q}
+       pax -w ${HG_MODULE.${repo}:Q} | gzip > 
${_HG_DISTDIR:Q}/${_HG_DISTFILE.${repo}:Q}
 .endfor
 
 pre-extract: do-hg-extract
@@ -144,12 +144,13 @@ pre-extract: do-hg-extract
 .PHONY: do-hg-extract
 do-hg-extract:
 .for _repo_ in ${HG_REPOSITORIES}
-       ${RUN} cd ${WRKDIR};                                            \
+       ${RUN} cd ${WRKDIR:Q};                                          \
        if [ ! -d ${_HG_DISTDIR:Q} ]; then mkdir -p ${_HG_DISTDIR:Q}; fi;       
\
        ${_HG_EXTRACT_CACHED.${_repo_}};                                        
\
        ${SETENV} ${_HG_ENV}                                            \
                ${_HG_CMD} clone ${_HG_FLAGS}                           \
-                       ${HG_REPO.${_repo_}:Q} ${HG_MODULE.${_repo_}} && \
+                       ${HG_REPO.${_repo_}:Q}                          \
+                       ${HG_MODULE.${_repo_}:Q} &&                     \
        (cd ${HG_MODULE.${_repo_}:Q} &&                                 \
        ${SETENV} ${_HG_ENV}                                            \
                ${_HG_CMD} update ${_HG_FLAGS}                          \
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index 0d3e780..07ce5c6 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -173,9 +173,9 @@ _SVN_DISTFILE.${repo}=      
${SVN_DISTBASE.${repo}}-${_SVN_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
 _SVN_EXTRACT_CACHED.${repo}=   \
-       if [ -f ${_SVN_DISTDIR}/${_SVN_DISTFILE.${repo}:Q} ]; then              
\
+       if [ -f ${_SVN_DISTDIR:Q}/${_SVN_DISTFILE.${repo}:Q} ]; then    \
          ${STEP_MSG} "Extracting cached Subversion archive 
"${_SVN_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_SVN_DISTDIR}/${_SVN_DISTFILE.${repo}:Q} | pax -r;       
\
+         gzip -d -c ${_SVN_DISTDIR:Q}/${_SVN_DISTFILE.${repo}:Q} | pax -r;     
\
          exit 0;                                                       \
        fi
 
@@ -183,7 +183,7 @@ _SVN_EXTRACT_CACHED.${repo}=        \
 _SVN_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached Subversion archive 
"${_SVN_DISTFILE.${repo}:Q}"."; \
        ${MKDIR} ${_SVN_DISTDIR:Q};                                             
        \
-       pax -w ${SVN_MODULE.${repo}:Q} | gzip > 
${_SVN_DISTDIR}/${_SVN_DISTFILE.${repo}:Q}
+       pax -w ${SVN_MODULE.${repo}:Q} | gzip > 
${_SVN_DISTDIR:Q}/${_SVN_DISTFILE.${repo}:Q}
 .  else
 # I have to set them to noop:
 _SVN_DISTFILE.${repo}=         :
@@ -196,12 +196,12 @@ pre-extract: do-svn-extract
 
 do-svn-extract: .PHONY
 .if defined(SVN_CERTS) && !empty(SVN_CERTS)
-       ${RUN}${MKDIR} -p ${_SVN_CONFIG_DIR}/auth/svn.ssl.server
-       ${RUN}${CP} ${SVN_CERTS} ${_SVN_CONFIG_DIR}/auth/svn.ssl.server
+       ${RUN}${MKDIR} -p ${_SVN_CONFIG_DIR:Q}/auth/svn.ssl.server
+       ${RUN}${CP} ${SVN_CERTS} ${_SVN_CONFIG_DIR:Q}/auth/svn.ssl.server
 .endif
 .for repo in ${SVN_REPOSITORIES}
-       ${RUN} cd ${WRKDIR};                                            \
-       if [ ! -d ${_SVN_DISTDIR} ]; then mkdir -p ${_SVN_DISTDIR:Q}; fi;       
\
+       ${RUN} cd ${WRKDIR:Q};                                          \
+       if [ ! -d ${_SVN_DISTDIR:Q} ]; then mkdir -p ${_SVN_DISTDIR:Q}; fi;     
\
        ${_SVN_EXTRACT_CACHED.${repo}};                                 \
        ${STEP_MSG} "Downloading "${SVN_MODULE.${repo}:Q}" from 
"${SVN_ROOT.${repo}:Q}"."; \
        ${SETENV} ${_SVN_ENV}                                           \
-- 
1.9.2

>From 7495032613afe7a6f95975f88551f5eb78d485bf Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sun, 4 May 2014 02:28:34 -0400
Subject: [PATCH 06/13] delete duplicate CVS cache archive extraction code

---
 mk/cvs-package.mk | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index a6b976a..990c360 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -198,11 +198,6 @@ do-cvs-extract: .PHONY
        ${RUN} cd ${WRKDIR:Q};                                          \
        if [ ! -d ${_CVS_DISTDIR:Q} ]; then mkdir -p ${_CVS_DISTDIR:Q}; fi;     
\
        ${_CVS_EXTRACT_CACHED.${repo}};                                 \
-       p="$$(cd ${_CVS_DISTDIR:Q} && ls -t 
${PKGBASE:Q}-${CVS_MODULE.${repo}:Q}-* | head -n 1)";       \
-       if [ -n "$$p" ]; then                                           \
-         ${STEP_MSG} "Extracting cached CVS archive \"""$$p\".";       \
-         pax -r -z -f ${_CVS_DISTDIR:Q}/"$$p";                         \
-       fi;                                                             \
        case ${CVS_ROOT.${repo}:Q} in                                   \
          :pserver:*)                                                   \
            [ -f ${_CVS_PASSFILE:Q} ] || ${TOUCH} ${_CVS_PASSFILE:Q};   \
-- 
1.9.2

>From fee6a57fcb99f7c7b196982033b7707717cad59c Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Thu, 27 Feb 2014 18:22:57 -0500
Subject: [PATCH 07/13] remove a redundant 'mkdir -p'

---
 mk/cvs-package.mk | 1 -
 mk/git-package.mk | 1 -
 mk/hg-package.mk  | 1 -
 mk/svn-package.mk | 1 -
 4 files changed, 4 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index 990c360..73ed6cd 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -196,7 +196,6 @@ pre-extract: do-cvs-extract
 do-cvs-extract: .PHONY
 .for repo in ${CVS_REPOSITORIES}
        ${RUN} cd ${WRKDIR:Q};                                          \
-       if [ ! -d ${_CVS_DISTDIR:Q} ]; then mkdir -p ${_CVS_DISTDIR:Q}; fi;     
\
        ${_CVS_EXTRACT_CACHED.${repo}};                                 \
        case ${CVS_ROOT.${repo}:Q} in                                   \
          :pserver:*)                                                   \
diff --git a/mk/git-package.mk b/mk/git-package.mk
index dee199c..3bf8024 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -129,7 +129,6 @@ pre-extract: do-git-extract
 do-git-extract:
 .for _repo_ in ${GIT_REPOSITORIES}
        ${RUN} cd ${WRKDIR:Q};                                          \
-       if [ ! -d ${_GIT_DISTDIR:Q} ]; then mkdir -p ${_GIT_DISTDIR:Q}; fi;     
\
        ${_GIT_EXTRACT_CACHED.${_repo_}};                               \
        ${SETENV} ${_GIT_ENV}                                           \
                ${_GIT_CMD} clone                                       \
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index 6a419df..1081d16 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -145,7 +145,6 @@ pre-extract: do-hg-extract
 do-hg-extract:
 .for _repo_ in ${HG_REPOSITORIES}
        ${RUN} cd ${WRKDIR:Q};                                          \
-       if [ ! -d ${_HG_DISTDIR:Q} ]; then mkdir -p ${_HG_DISTDIR:Q}; fi;       
\
        ${_HG_EXTRACT_CACHED.${_repo_}};                                        
\
        ${SETENV} ${_HG_ENV}                                            \
                ${_HG_CMD} clone ${_HG_FLAGS}                           \
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index 07ce5c6..681586e 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -201,7 +201,6 @@ do-svn-extract: .PHONY
 .endif
 .for repo in ${SVN_REPOSITORIES}
        ${RUN} cd ${WRKDIR:Q};                                          \
-       if [ ! -d ${_SVN_DISTDIR:Q} ]; then mkdir -p ${_SVN_DISTDIR:Q}; fi;     
\
        ${_SVN_EXTRACT_CACHED.${repo}};                                 \
        ${STEP_MSG} "Downloading "${SVN_MODULE.${repo}:Q}" from 
"${SVN_ROOT.${repo}:Q}"."; \
        ${SETENV} ${_SVN_ENV}                                           \
-- 
1.9.2

>From ab5836c26fc8cb1703ad6a213bd44298d979eb51 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Thu, 27 Feb 2014 18:28:52 -0500
Subject: [PATCH 08/13] use variables to shorten long lines

---
 mk/cvs-package.mk | 14 ++++++++------
 mk/git-package.mk | 14 ++++++++------
 mk/hg-package.mk  | 14 ++++++++------
 mk/svn-package.mk | 14 ++++++++------
 4 files changed, 32 insertions(+), 24 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index 73ed6cd..a2388fd 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -178,17 +178,19 @@ _CVS_DISTFILE.${repo}=    
${PKGBASE}-${CVS_MODULE.${repo}}-${_CVS_TAG.${repo}}.tar.
 
 #   command to extract cache file
 _CVS_EXTRACT_CACHED.${repo}=   \
-       if [ -f ${_CVS_DISTDIR:Q}/${_CVS_DISTFILE.${repo}:Q} ]; then    \
-         ${STEP_MSG} "Extracting cached CVS archive 
"${_CVS_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_CVS_DISTDIR:Q}/${_CVS_DISTFILE.${repo}:Q} | pax -r;     
\
-         exit 0;                                                       \
+       tarball=${_CVS_DISTFILE.${repo}:Q};                             \
+       fulltarball=${_CVS_DISTDIR:Q}/$$tarball;                        \
+       if [ -f "$$fulltarball" ]; then                                 \
+               ${STEP_MSG} "Extracting cached CVS archive $$tarball."; \
+               gzip -d -c "$$fulltarball" | pax -r;                    \
+               exit 0;                                                 \
        fi
 
 #   create cache archive
 _CVS_CREATE_CACHE.${repo}=     \
-       ${STEP_MSG} "Creating cached CVS archive 
"${_CVS_DISTFILE.${repo}:Q}"."; \
+       ${STEP_MSG} "Creating cached CVS archive $$tarball.";           \
        ${MKDIR} ${_CVS_DISTDIR:Q};                                     \
-       pax -w ${CVS_MODULE.${repo}:Q} | gzip > 
${_CVS_DISTDIR:Q}/${_CVS_DISTFILE.${repo}:Q}
+       pax -w ${CVS_MODULE.${repo}:Q} | gzip >$$fulltarball
 .endfor
 
 pre-extract: do-cvs-extract
diff --git a/mk/git-package.mk b/mk/git-package.mk
index 3bf8024..2e0951a 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -110,17 +110,19 @@ _GIT_DISTFILE.${repo}=    
${PKGBASE}-${GIT_MODULE.${repo}}-${_GIT_TAG.${repo}}.tar.
 
 #   command to extract cache file
 _GIT_EXTRACT_CACHED.${repo}=   \
-       if [ -f ${_GIT_DISTDIR:Q}/${_GIT_DISTFILE.${repo}:Q} ]; then    \
-         ${STEP_MSG} "Extracting cached GIT archive 
"${_GIT_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_GIT_DISTDIR:Q}/${_GIT_DISTFILE.${repo}:Q} | pax -r;     
\
-         exit 0;                                                       \
+       tarball=${_GIT_DISTFILE.${repo}:Q};                             \
+       fulltarball=${_GIT_DISTDIR:Q}/$$tarball;                        \
+       if [ -f "$$fulltarball" ]; then                                 \
+               ${STEP_MSG} "Extracting cached GIT archive $$tarball."; \
+               gzip -d -c "$$fulltarball" | pax -r;                    \
+               exit 0;                                                 \
        fi
 
 #   create cache archive
 _GIT_CREATE_CACHE.${repo}=     \
-       ${STEP_MSG} "Creating cached GIT archive 
"${_GIT_DISTFILE.${repo}:Q}"."; \
+       ${STEP_MSG} "Creating cached GIT archive $$tarball.";           \
        ${MKDIR} ${_GIT_DISTDIR:Q};                                     \
-       pax -w ${GIT_MODULE.${repo}:Q} | gzip > 
${_GIT_DISTDIR:Q}/${_GIT_DISTFILE.${repo}:Q}
+       pax -w ${GIT_MODULE.${repo}:Q} | gzip >$$fulltarball
 .endfor
 
 pre-extract: do-git-extract
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index 1081d16..f6099f7 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -126,17 +126,19 @@ _HG_DISTFILE.${repo}=     
${PKGBASE}-${HG_MODULE.${repo}}-${_HG_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
 _HG_EXTRACT_CACHED.${repo}=    \
-       if [ -f ${_HG_DISTDIR:Q}/${_HG_DISTFILE.${repo}:Q} ]; then      \
-         ${STEP_MSG} "Extracting cached Mercurial archive 
"${_HG_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_HG_DISTDIR:Q}/${_HG_DISTFILE.${repo}:Q} | pax -r;       
\
-         exit 0;                                                       \
+       tarball=${_HG_DISTFILE.${repo}:Q};                              \
+       fulltarball=${_HG_DISTDIR:Q}/$$tarball;                         \
+       if [ -f "$$fulltarball" ]; then                                 \
+               ${STEP_MSG} "Extracting cached Mercurial archive $$tarball.";   
\
+               gzip -d -c "$$fulltarball" | pax -r;                    \
+               exit 0;                                                 \
        fi
 
 #   create cache archive
 _HG_CREATE_CACHE.${repo}=      \
-       ${STEP_MSG} "Creating cached Mercurial archive 
"${_HG_DISTFILE.${repo}:Q}"."; \
+       ${STEP_MSG} "Creating cached Mercurial archive $$tarball.";     \
        ${MKDIR} ${_HG_DISTDIR:Q};                                      \
-       pax -w ${HG_MODULE.${repo}:Q} | gzip > 
${_HG_DISTDIR:Q}/${_HG_DISTFILE.${repo}:Q}
+       pax -w ${HG_MODULE.${repo}:Q} | gzip >$$fulltarball
 .endfor
 
 pre-extract: do-hg-extract
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index 681586e..c8457dd 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -173,17 +173,19 @@ _SVN_DISTFILE.${repo}=    
${SVN_DISTBASE.${repo}}-${_SVN_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
 _SVN_EXTRACT_CACHED.${repo}=   \
-       if [ -f ${_SVN_DISTDIR:Q}/${_SVN_DISTFILE.${repo}:Q} ]; then    \
-         ${STEP_MSG} "Extracting cached Subversion archive 
"${_SVN_DISTFILE.${repo}:Q}"."; \
-         gzip -d -c ${_SVN_DISTDIR:Q}/${_SVN_DISTFILE.${repo}:Q} | pax -r;     
\
-         exit 0;                                                       \
+       tarball=${_SVN_DISTFILE.${repo}:Q};                             \
+       fulltarball=${_SVN_DISTDIR:Q}/$$tarball;                        \
+       if [ -f "$$fulltarball" ]; then                                 \
+               ${STEP_MSG} "Extracting cached Subversion archive $$tarball.";  
\
+               gzip -d -c "$$fulltarball" | pax -r;                    \
+               exit 0;                                                 \
        fi
 
 #   create cache archive
 _SVN_CREATE_CACHE.${repo}=     \
-       ${STEP_MSG} "Creating cached Subversion archive 
"${_SVN_DISTFILE.${repo}:Q}"."; \
+       ${STEP_MSG} "Creating cached Subversion archive $$tarball.";    \
        ${MKDIR} ${_SVN_DISTDIR:Q};                                             
        \
-       pax -w ${SVN_MODULE.${repo}:Q} | gzip > 
${_SVN_DISTDIR:Q}/${_SVN_DISTFILE.${repo}:Q}
+       pax -w ${SVN_MODULE.${repo}:Q} | gzip >$$fulltarball
 .  else
 # I have to set them to noop:
 _SVN_DISTFILE.${repo}=         :
-- 
1.9.2

>From a036f110ce14daedaa606b589b9ed3539c1f40e1 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sun, 4 May 2014 02:38:39 -0400
Subject: [PATCH 09/13] use pax's -z argument instead of piping to/from gzip

Except for the last command it's impossible to get the return value of
commands in a pipeline.  Use pax's -z argument to avoid piping to/from
gzip to make easier in the future to modify the code to detect when a
command fails (returns a non-zero exit code).
---
 mk/cvs-package.mk | 4 ++--
 mk/git-package.mk | 4 ++--
 mk/hg-package.mk  | 4 ++--
 mk/svn-package.mk | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index a2388fd..a76b811 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -182,7 +182,7 @@ _CVS_EXTRACT_CACHED.${repo}=        \
        fulltarball=${_CVS_DISTDIR:Q}/$$tarball;                        \
        if [ -f "$$fulltarball" ]; then                                 \
                ${STEP_MSG} "Extracting cached CVS archive $$tarball."; \
-               gzip -d -c "$$fulltarball" | pax -r;                    \
+               pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
 
@@ -190,7 +190,7 @@ _CVS_EXTRACT_CACHED.${repo}=        \
 _CVS_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached CVS archive $$tarball.";           \
        ${MKDIR} ${_CVS_DISTDIR:Q};                                     \
-       pax -w ${CVS_MODULE.${repo}:Q} | gzip >$$fulltarball
+       pax -w -z -f "$$fulltarball" ${CVS_MODULE.${repo}:Q}
 .endfor
 
 pre-extract: do-cvs-extract
diff --git a/mk/git-package.mk b/mk/git-package.mk
index 2e0951a..e1079cc 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -114,7 +114,7 @@ _GIT_EXTRACT_CACHED.${repo}=        \
        fulltarball=${_GIT_DISTDIR:Q}/$$tarball;                        \
        if [ -f "$$fulltarball" ]; then                                 \
                ${STEP_MSG} "Extracting cached GIT archive $$tarball."; \
-               gzip -d -c "$$fulltarball" | pax -r;                    \
+               pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
 
@@ -122,7 +122,7 @@ _GIT_EXTRACT_CACHED.${repo}=        \
 _GIT_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached GIT archive $$tarball.";           \
        ${MKDIR} ${_GIT_DISTDIR:Q};                                     \
-       pax -w ${GIT_MODULE.${repo}:Q} | gzip >$$fulltarball
+       pax -w -z -f "$$fulltarball" ${GIT_MODULE.${repo}:Q}
 .endfor
 
 pre-extract: do-git-extract
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index f6099f7..fa79415 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -130,7 +130,7 @@ _HG_EXTRACT_CACHED.${repo}= \
        fulltarball=${_HG_DISTDIR:Q}/$$tarball;                         \
        if [ -f "$$fulltarball" ]; then                                 \
                ${STEP_MSG} "Extracting cached Mercurial archive $$tarball.";   
\
-               gzip -d -c "$$fulltarball" | pax -r;                    \
+               pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
 
@@ -138,7 +138,7 @@ _HG_EXTRACT_CACHED.${repo}= \
 _HG_CREATE_CACHE.${repo}=      \
        ${STEP_MSG} "Creating cached Mercurial archive $$tarball.";     \
        ${MKDIR} ${_HG_DISTDIR:Q};                                      \
-       pax -w ${HG_MODULE.${repo}:Q} | gzip >$$fulltarball
+       pax -w -z -f "$$fulltarball" ${HG_MODULE.${repo}:Q}
 .endfor
 
 pre-extract: do-hg-extract
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index c8457dd..3b26e19 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -177,7 +177,7 @@ _SVN_EXTRACT_CACHED.${repo}=        \
        fulltarball=${_SVN_DISTDIR:Q}/$$tarball;                        \
        if [ -f "$$fulltarball" ]; then                                 \
                ${STEP_MSG} "Extracting cached Subversion archive $$tarball.";  
\
-               gzip -d -c "$$fulltarball" | pax -r;                    \
+               pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
 
@@ -185,7 +185,7 @@ _SVN_EXTRACT_CACHED.${repo}=        \
 _SVN_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached Subversion archive $$tarball.";    \
        ${MKDIR} ${_SVN_DISTDIR:Q};                                             
        \
-       pax -w ${SVN_MODULE.${repo}:Q} | gzip >$$fulltarball
+       pax -w -z -f "$$fulltarball" ${SVN_MODULE.${repo}:Q}
 .  else
 # I have to set them to noop:
 _SVN_DISTFILE.${repo}=         :
-- 
1.9.2

>From 478e3a0c2d42fb3995fdba2a754d2827066b1fb6 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sun, 4 May 2014 02:18:45 -0400
Subject: [PATCH 10/13] point ${WRKSRC} to the VCS working dir by default

Packages that use cvs-package.mk, git-package.mk, hg-package.mk, or
svn-package.mk typically only fetch source files from a single
repository; they do not usually fetch from multiple repositories or
fetch a tarball in addition to fetching from a repository.  To
simplify package development in this common case without breaking more
elaborate cases, create ${WRKSRC} as a symlink pointing to the first
VCS working directory if ${WRKSRC} doesn't exist by the time
post-extract is run.

With this change, simple packages no longer need to do
WRKSRC=${WRKDIR}/${<VCS>_MODULE.foo}
---
 mk/cvs-package.mk | 15 +++++++++++++++
 mk/git-package.mk | 15 +++++++++++++++
 mk/hg-package.mk  | 15 +++++++++++++++
 mk/svn-package.mk | 15 +++++++++++++++
 4 files changed, 60 insertions(+)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index a76b811..78cd71d 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -34,6 +34,10 @@
 #
 #      Default value: ${id}
 #
+#      If ${WRKSRC} doesn't exist by the time post-extract is run,
+#      ${WRKSRC} will be created as a symlink pointing to
+#      ${CVS_MODULE.${CVS_REPOSITORIES:[1]}}.
+#
 # It may define the following variables:
 #
 # CVS_TAG.${id}
@@ -216,4 +220,15 @@ do-cvs-extract: .PHONY
        ${_CVS_CREATE_CACHE.${repo}}
 .endfor
 
+post-extract: do-cvs-post-extract
+.PHONY: do-cvs-post-extract
+do-cvs-post-extract:
+.if ${CVS_REPOSITORIES:[\#]} > 0
+       ${RUN}                                                          \
+       if [ ! -e ${WRKSRC:Q} ] && [ ! -h ${WRKSRC:Q} ]; then           \
+               ${LN} -s ${CVS_MODULE.${CVS_REPOSITORIES:[1]}:Q}        \
+                       ${WRKSRC:Q};                                    \
+       fi;
+.endif
+
 .endif
diff --git a/mk/git-package.mk b/mk/git-package.mk
index e1079cc..6e4a5be 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -29,6 +29,10 @@
 #
 #      Defaults to ${id}.
 #
+#      If ${WRKSRC} doesn't exist by the time post-extract is run,
+#      ${WRKSRC} will be created as a symlink pointing to
+#      ${GIT_MODULE.${GIT_REPOSITORIES:[1]}}.
+#
 
 .if !defined(_PKG_MK_GIT_PACKAGE_MK)
 _PKG_MK_GIT_PACKAGE_MK=        # defined
@@ -140,4 +144,15 @@ do-git-extract:
        ${_GIT_CREATE_CACHE.${_repo_}}
 .endfor
 
+post-extract: do-git-post-extract
+.PHONY: do-git-post-extract
+do-git-post-extract:
+.if ${GIT_REPOSITORIES:[\#]} > 0
+       ${RUN}                                                          \
+       if [ ! -e ${WRKSRC:Q} ] && [ ! -h ${WRKSRC:Q} ]; then           \
+               ${LN} -s ${GIT_MODULE.${GIT_REPOSITORIES:[1]}:Q}        \
+                       ${WRKSRC:Q};                                    \
+       fi;
+.endif
+
 .endif
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index fa79415..796b0ac 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -34,6 +34,10 @@
 #
 #      Default value: ${id}
 #
+#      If ${WRKSRC} doesn't exist by the time post-extract is run,
+#      ${WRKSRC} will be created as a symlink pointing to
+#      ${HG_MODULE.${HG_REPOSITORIES:[1]}}.
+#
 
 .if !defined(_PKG_MK_HG_PACKAGE_MK)
 _PKG_MK_HG_PACKAGE_MK= # defined
@@ -159,4 +163,15 @@ do-hg-extract:
        ${_HG_CREATE_CACHE.${_repo_}}
 .endfor
 
+post-extract: do-hg-post-extract
+.PHONY: do-hg-post-extract
+do-hg-post-extract:
+.if ${HG_REPOSITORIES:[\#]} > 0
+       ${RUN}                                                          \
+       if [ ! -e ${WRKSRC:Q} ] && [ ! -h ${WRKSRC:Q} ]; then           \
+               ${LN} -s ${HG_MODULE.${HG_REPOSITORIES:[1]}:Q}          \
+                       ${WRKSRC:Q};                                    \
+       fi;
+.endif
+
 .endif
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index 3b26e19..7a604cc 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -30,6 +30,10 @@
 #
 #      Default value: ${id}
 #
+#      If ${WRKSRC} doesn't exist by the time post-extract is run,
+#      ${WRKSRC} will be created as a symlink pointing to
+#      ${SVN_MODULE.${SVN_REPOSITORIES:[1]}}.
+#
 # SVN_DISTBASE.${id}
 #      The prefix for cached archive file name.
 #
@@ -214,4 +218,15 @@ do-svn-extract: .PHONY
        ${_SVN_CREATE_CACHE.${repo}}
 .endfor
 
+post-extract: do-svn-post-extract
+.PHONY: do-svn-post-extract
+do-svn-post-extract:
+.if ${SVN_REPOSITORIES:[\#]} > 0
+       ${RUN}                                                          \
+       if [ ! -e ${WRKSRC:Q} ] && [ ! -h ${WRKSRC:Q} ]; then           \
+               ${LN} -s ${SVN_MODULE.${SVN_REPOSITORIES:[1]}:Q}        \
+                       ${WRKSRC:Q};                                    \
+       fi;
+.endif
+
 .endif
-- 
1.9.2

>From 115c402e35cb1bbc58782794710227ed5918d871 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Sat, 3 May 2014 22:13:28 -0400
Subject: [PATCH 11/13] add NO_{CVS,GIT,HG}_CACHE to disable caching like
 NO_SVN_CACHE

Also add NO_{CVS,GIT,HG,SVN}_CACHE.${id} so that packages can disable
caching if needed.
---
 mk/cvs-package.mk | 23 +++++++++++++++++++++++
 mk/git-package.mk | 23 +++++++++++++++++++++++
 mk/hg-package.mk  | 23 +++++++++++++++++++++++
 mk/svn-package.mk | 25 ++++++++++++++++++++-----
 4 files changed, 89 insertions(+), 5 deletions(-)

diff --git a/mk/cvs-package.mk b/mk/cvs-package.mk
index 78cd71d..3fbdde8 100644
--- a/mk/cvs-package.mk
+++ b/mk/cvs-package.mk
@@ -10,6 +10,10 @@
 # CHECKOUT_DATE
 #      Date to check out in ISO format (YYYY-MM-DD).
 #
+# NO_CVS_CACHE
+#      If set to yes, do not use or create a cached CVS archive.
+#      Default value: no
+#
 # === Package-settable variables ===
 #
 # A package using this file shall define the following variables:
@@ -40,6 +44,10 @@
 #
 # It may define the following variables:
 #
+# NO_CVS_CACHE.${id}
+#      If set to yes, do not use or create a cached CVS archive.
+#      Default value: no
+#
 # CVS_TAG.${id}
 #      Overridable CVS tag for a repository.
 #
@@ -177,10 +185,18 @@ _CVS_TAG.${repo}= ${_CVS_TODAY:Q}
 .  endif
 
 # Cache support:
+.  if !empty(NO_CVS_CACHE:M[Yy][Ee][Ss]) \
+       || !empty(NO_CVS_CACHE.${repo}:M[Yy][Ee][Ss])
+_NO_CVS_CACHE.${repo}= yes
+.  else
+_NO_CVS_CACHE.${repo}= no
+.  endif
+
 #   cache file name
 _CVS_DISTFILE.${repo}= 
${PKGBASE}-${CVS_MODULE.${repo}}-${_CVS_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
+.  if empty(_NO_CVS_CACHE.${repo}:M[Yy][Ee][Ss])
 _CVS_EXTRACT_CACHED.${repo}=   \
        tarball=${_CVS_DISTFILE.${repo}:Q};                             \
        fulltarball=${_CVS_DISTDIR:Q}/$$tarball;                        \
@@ -189,12 +205,19 @@ _CVS_EXTRACT_CACHED.${repo}=      \
                pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
+.  else
+_CVS_EXTRACT_CACHED.${repo}=   :
+.  endif
 
 #   create cache archive
+.  if empty(_NO_CVS_CACHE.${repo}:M[Yy][Ee][Ss])
 _CVS_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached CVS archive $$tarball.";           \
        ${MKDIR} ${_CVS_DISTDIR:Q};                                     \
        pax -w -z -f "$$fulltarball" ${CVS_MODULE.${repo}:Q}
+.  else
+_CVS_CREATE_CACHE.${repo}=     :
+.  endif
 .endfor
 
 pre-extract: do-cvs-extract
diff --git a/mk/git-package.mk b/mk/git-package.mk
index 6e4a5be..bec0644 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -3,6 +3,10 @@
 #
 # === User-settable variables ===
 #
+# NO_GIT_CACHE
+#      If set to yes, do not use or create a cached Git archive.
+#      Default value: no
+#
 # === Package-settable variables ===
 #
 # A package using this file shall define the following variables:
@@ -16,6 +20,10 @@
 #
 # It may define the following variables:
 #
+# NO_GIT_CACHE.${id}
+#      If set to yes, do not use or create a cached Git archive.
+#      Default value: no
+#
 # GIT_TAG
 #      The tag to check out (default: HEAD).
 #
@@ -109,10 +117,18 @@ _GIT_TAG.${repo}= ${_GIT_TODAY:Q}
 .  endif
 
 # Cache support:
+.  if !empty(NO_GIT_CACHE:M[Yy][Ee][Ss]) \
+       || !empty(NO_GIT_CACHE.${repo}:M[Yy][Ee][Ss])
+_NO_GIT_CACHE.${repo}= yes
+.  else
+_NO_GIT_CACHE.${repo}= no
+.  endif
+
 #   cache file name
 _GIT_DISTFILE.${repo}= 
${PKGBASE}-${GIT_MODULE.${repo}}-${_GIT_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
+.  if empty(_NO_GIT_CACHE.${repo}:M[Yy][Ee][Ss])
 _GIT_EXTRACT_CACHED.${repo}=   \
        tarball=${_GIT_DISTFILE.${repo}:Q};                             \
        fulltarball=${_GIT_DISTDIR:Q}/$$tarball;                        \
@@ -121,12 +137,19 @@ _GIT_EXTRACT_CACHED.${repo}=      \
                pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
+.  else
+_GIT_EXTRACT_CACHED.${repo}=   :
+.  endif
 
 #   create cache archive
+.  if empty(_NO_GIT_CACHE.${repo}:M[Yy][Ee][Ss])
 _GIT_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached GIT archive $$tarball.";           \
        ${MKDIR} ${_GIT_DISTDIR:Q};                                     \
        pax -w -z -f "$$fulltarball" ${GIT_MODULE.${repo}:Q}
+.  else
+_GIT_CREATE_CACHE.${repo}=     :
+.  endif
 .endfor
 
 pre-extract: do-git-extract
diff --git a/mk/hg-package.mk b/mk/hg-package.mk
index 796b0ac..e11eb0a 100644
--- a/mk/hg-package.mk
+++ b/mk/hg-package.mk
@@ -8,6 +8,10 @@
 # CHECKOUT_DATE
 #      Date to check out in ISO format (YYYY-MM-DD).
 #
+# NO_HG_CACHE
+#      If set to yes, do not use or create a cached Mercurial
+#      archive.  Default value: no
+#
 # === Package-settable variables ===
 #
 # A package using this file shall define the following variables:
@@ -21,6 +25,10 @@
 #
 # It may define the following variables:
 #
+# NO_HG_CACHE.${id}
+#      If set to yes, do not use or create a cached Mercurial
+#      archive.  Default value: no
+#
 # HG_TAG
 #      The HG tag to check out (default: HEAD).
 #
@@ -125,10 +133,18 @@ _HG_TAG.${repo}=  ${_HG_TODAY:Q}
 .  endif
 
 # Cache support:
+.  if !empty(NO_HG_CACHE:M[Yy][Ee][Ss]) \
+       || !empty(NO_HG_CACHE.${repo}:M[Yy][Ee][Ss])
+_NO_HG_CACHE.${repo}=  yes
+.  else
+_NO_HG_CACHE.${repo}=  no
+.  endif
+
 #   cache file name
 _HG_DISTFILE.${repo}=  
${PKGBASE}-${HG_MODULE.${repo}}-${_HG_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
+.  if empty(_NO_HG_CACHE.${repo}:M[Yy][Ee][Ss])
 _HG_EXTRACT_CACHED.${repo}=    \
        tarball=${_HG_DISTFILE.${repo}:Q};                              \
        fulltarball=${_HG_DISTDIR:Q}/$$tarball;                         \
@@ -137,12 +153,19 @@ _HG_EXTRACT_CACHED.${repo}=       \
                pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
+.  else
+_HG_EXTRACT_CACHED.${repo}=    :
+.  endif
 
 #   create cache archive
+.  if empty(_NO_HG_CACHE.${repo}:M[Yy][Ee][Ss])
 _HG_CREATE_CACHE.${repo}=      \
        ${STEP_MSG} "Creating cached Mercurial archive $$tarball.";     \
        ${MKDIR} ${_HG_DISTDIR:Q};                                      \
        pax -w -z -f "$$fulltarball" ${HG_MODULE.${repo}:Q}
+.  else
+_HG_CREATE_CACHE.${repo}=      :
+.  endif
 .endfor
 
 pre-extract: do-hg-extract
diff --git a/mk/svn-package.mk b/mk/svn-package.mk
index 7a604cc..b05af14 100644
--- a/mk/svn-package.mk
+++ b/mk/svn-package.mk
@@ -8,6 +8,10 @@
 # CHECKOUT_DATE
 #      Date to check out in ISO format (YYYY-MM-DD).
 #
+# NO_SVN_CACHE
+#      If set to yes, do not use or create a cached Subversion
+#      archive.  Default value: no
+#
 # === Package-settable variables ===
 #
 # A package using this file shall define the following variables:
@@ -41,6 +45,10 @@
 #
 # It may define the following variables:
 #
+# NO_SVN_CACHE.${id}
+#      If set to yes, do not use or create a cached Subversion
+#      archive.  Default value: no
+#
 # SVN_CERTS
 #      Files holding SSL certificates of the svn servers.
 #
@@ -167,8 +175,13 @@ _SVN_TAG.${repo}=  ${_SVN_TODAY}
 .  endif
 
 # Cache support:
-.  if !defined(NO_SVN_CACHE.${repo}) \
-   || defined(NO_SVN_CACHE.${repo}) && 
empty(NO_SVN_CACHE.${repo}:M[Yy][Ee][Ss])
+.  if !empty(NO_SVN_CACHE:M[Yy][Ee][Ss]) \
+       || !empty(NO_SVN_CACHE.${repo}:M[Yy][Ee][Ss])
+_NO_SVN_CACHE.${repo}= yes
+.  else
+_NO_SVN_CACHE.${repo}= no
+.  endif
+
 #   cache file name
 .  if !defined(SVN_DISTBASE.${repo})
 SVN_DISTBASE.${repo}=  ${PKGBASE}-${SVN_MODULE.${repo}}
@@ -176,6 +189,7 @@ SVN_DISTBASE.${repo}=       ${PKGBASE}-${SVN_MODULE.${repo}}
 _SVN_DISTFILE.${repo}= ${SVN_DISTBASE.${repo}}-${_SVN_TAG.${repo}}.tar.gz
 
 #   command to extract cache file
+.  if empty(_NO_SVN_CACHE.${repo}:M[Yy][Ee][Ss])
 _SVN_EXTRACT_CACHED.${repo}=   \
        tarball=${_SVN_DISTFILE.${repo}:Q};                             \
        fulltarball=${_SVN_DISTDIR:Q}/$$tarball;                        \
@@ -184,16 +198,17 @@ _SVN_EXTRACT_CACHED.${repo}=      \
                pax -r -z -f "$$fulltarball";                           \
                exit 0;                                                 \
        fi
+.  else
+_SVN_EXTRACT_CACHED.${repo}=   :
+.  endif
 
 #   create cache archive
+.  if empty(_NO_SVN_CACHE.${repo}:M[Yy][Ee][Ss])
 _SVN_CREATE_CACHE.${repo}=     \
        ${STEP_MSG} "Creating cached Subversion archive $$tarball.";    \
        ${MKDIR} ${_SVN_DISTDIR:Q};                                             
        \
        pax -w -z -f "$$fulltarball" ${SVN_MODULE.${repo}:Q}
 .  else
-# I have to set them to noop:
-_SVN_DISTFILE.${repo}=         :
-_SVN_EXTRACT_CACHED.${repo}=   :
 _SVN_CREATE_CACHE.${repo}=     :
 .  endif
 .endfor
-- 
1.9.2

>From e71b6437b9dde5975782de87db521adb3e06550a Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Thu, 27 Feb 2014 15:42:56 -0500
Subject: [PATCH 12/13] use git clone's rules to derive default for
 GIT_MODULE.${id}

Before, GIT_MODULE.${id} defaulted to ${id}.  Change the default to
the same string that 'git clone' would choose for naming the directory
to clone into.  This results in more user-friendly cache tarball
names.
---
 mk/git-package.mk | 24 ++++++++++++++++++++++--
 1 file changed, 22 insertions(+), 2 deletions(-)

diff --git a/mk/git-package.mk b/mk/git-package.mk
index bec0644..d28ab11 100644
--- a/mk/git-package.mk
+++ b/mk/git-package.mk
@@ -35,7 +35,8 @@
 #      repository.  This is also used to name the clone cache tarball
 #      stored in ${DISTDIR}.
 #
-#      Defaults to ${id}.
+#      Defaults to the "humanish" part of ${GIT_REPO.${id}}, similar
+#      to the default that 'git clone' uses.
 #
 #      If ${WRKSRC} doesn't exist by the time post-extract is run,
 #      ${WRKSRC} will be created as a symlink pointing to
@@ -99,7 +100,26 @@ _GIT_DISTDIR=               ${DISTDIR}/git-packages
 #
 
 .for repo in ${GIT_REPOSITORIES}
-GIT_MODULE.${repo}?=   ${repo}
+# follow the same algorithm that 'git clone' does when "humanizing"
+# the clone URL.  first, start with the URL
+_GIT_MODULE_D_0.${repo}=       ${GIT_REPO.${repo}}
+# next remove trailing whitespaces and slashes
+_GIT_MODULE_D_1.${repo}=       ${_GIT_MODULE_D_0.${repo}:C;[/[:space:]]*$;;W}
+# next remove trailing /.git
+_GIT_MODULE_D_2.${repo}=       ${_GIT_MODULE_D_1.${repo}:S;/.git$;;W}
+# next find everything after the last : or /
+_GIT_MODULE_D_3.${repo}=       ${_GIT_MODULE_D_2.${repo}:C;.*[/:];;W}
+# next remove trailing .git
+_GIT_MODULE_D_4.${repo}=       ${_GIT_MODULE_D_3.${repo}:S/.git$//W}
+# next convert each whitespace or control char into an ascii space
+_GIT_MODULE_D_5.${repo}=       
${_GIT_MODULE_D_4.${repo}:C/[[:space:][:cntrl:]]/ /gW}
+# next remove leading whitespace
+_GIT_MODULE_D_6.${repo}=       ${_GIT_MODULE_D_5.${repo}:C/^ *//W}
+# next compress multiple spaces in a row into a single space
+_GIT_MODULE_D_7.${repo}=       ${_GIT_MODULE_D_6.${repo}:C/ +/ /gW}
+# next remove trailing whitespace
+_GIT_MODULE_DEFAULT.${repo}=   ${_GIT_MODULE_D_7.${repo}:S/ $//W}
+GIT_MODULE.${repo}?=   ${_GIT_MODULE_DEFAULT.${repo}}
 
 # determine appropriate checkout date or tag
 .  if defined(GIT_TAG.${repo})
-- 
1.9.2

>From b099e994c4129c6a22b1462cc7b70c228a46d761 Mon Sep 17 00:00:00 2001
From: Richard Hansen <rhansen%bbn.com@localhost>
Date: Fri, 28 Feb 2014 13:28:43 -0500
Subject: [PATCH 13/13] remove variable assignments that are no longer
 necessary

cvs-package.mk, git-package.mk, hg-package.mk, and svn-package.mk now
have sensible default values for their variables.  Remove the
now-unnecessary variable assignments that were made to accommodate the
previous behavior.
---
 FontManager/Makefile            |  2 --
 Typewriter/Makefile             |  2 --
 am-utils-git/Makefile           |  1 -
 apel-git/Makefile               |  2 --
 auto-complete-current/Makefile  |  2 --
 boinc-lib/Makefile.common       |  1 -
 boinc/Makefile                  |  3 ---
 bup-git/Makefile                |  2 --
 calypso/Makefile                |  2 --
 cinelerra-cv/Makefile           |  2 --
 darcs-to-git/Makefile           |  2 --
 davical-current/Makefile        |  2 --
 debugger-git/Makefile           |  1 -
 despotify/Makefile              |  3 +--
 distbb-current/Makefile         |  2 --
 dragbox/Makefile                |  1 -
 ecl/Makefile                    |  3 ---
 emacs-current-nox11/Makefile    |  4 ----
 emacs-current/Makefile          |  3 ---
 emacs-ditz/Makefile             |  2 --
 ffmpeg-current/Makefile         |  2 --
 fricas/Makefile                 |  5 -----
 fuse-google-drive/Makefile      |  2 --
 fuzzy-el-current/Makefile       |  2 --
 git-modes-git/Makefile          |  3 ---
 gmrender-resurrect-git/Makefile |  1 -
 gnubg/Makefile                  |  1 -
 gtk-gnutella-current/Makefile   |  2 --
 khal-git/Makefile               |  1 -
 leim-current/Makefile           |  3 +--
 lgogdownloader-git/Makefile     |  1 -
 libcpu/Makefile                 |  2 --
 lilypond-git/Makefile           |  2 --
 linuxigd-current/Makefile       |  3 ---
 llvm/Makefile                   |  2 --
 lmdbg-current/Makefile          |  2 --
 magit-git/Makefile              |  2 --
 maxima/Makefile                 |  2 --
 mk-configure/Makefile           |  1 -
 mpg123-nightly/Makefile         |  3 ---
 mplayer/Makefile                |  1 -
 mwf-designer/Makefile           |  2 --
 navi2ch-current/Makefile        |  2 --
 necpp-git/Makefile              |  1 -
 nih-current/Makefile            |  1 -
 objfw-git/Makefile              |  1 -
 openaxiom/Makefile              |  3 ---
 opentracker-current/Makefile    |  3 ---
 org-caldav-git/Makefile         |  1 -
 p5-Packager-Utils/Makefile      |  1 -
 pan2-git/Makefile               |  4 ----
 php-libawl-git/Makefile         |  3 ---
 pilemc-svn/Makefile             |  3 ---
 pkg_summary-utils/Makefile      |  2 --
 popup-el-current/Makefile       |  2 --
 prpltwtr/Makefile               |  1 -
 purple-translate/Makefile       |  1 -
 pwnat/Makefile                  |  2 --
 py-percol/Makefile              |  2 --
 py-prop/Makefile                |  2 --
 py-pydec/Makefile               |  2 --
 py-scikits_hydroclimpy/Makefile |  3 ---
 rpki-svn/Makefile               |  3 ---
 ruby-ditz/Makefile              | 10 +++-------
 sbcl/Makefile                   |  3 ---
 scummvm-nightly/Makefile        |  2 --
 sdif-git/Makefile               |  2 --
 simulavr-git/Makefile           |  2 --
 tamago-anthy/Makefile           |  2 --
 tc-git/Makefile                 |  1 -
 twittering-mode/Makefile        |  2 --
 uhd-git/Makefile                |  1 -
 virtualjaguar/Makefile          |  2 --
 wl-current/Makefile             |  2 --
 xf86-video-nv-current/Makefile  |  2 --
 yaml-mode/Makefile              |  2 --
 76 files changed, 5 insertions(+), 158 deletions(-)

diff --git a/FontManager/Makefile b/FontManager/Makefile
index 20b3a14..d895cf7 100644
--- a/FontManager/Makefile
+++ b/FontManager/Makefile
@@ -20,8 +20,6 @@ SVN_REPOSITORIES=     etoile
 SVN_ROOT.etoile=       
http://svn.gna.org/svn/etoile/trunk/Etoile/Services/User/FontManager
 SVN_MODULE.etoile=     FontManager
 
-WRKSRC=                        ${WRKDIR}/$(SVN_MODULE.etoile)
-
 .include "../../wip/mk/svn-package.mk"
 
 .include "../../devel/gnustep-base/buildlink3.mk"
diff --git a/Typewriter/Makefile b/Typewriter/Makefile
index 42282f6..51363f7 100644
--- a/Typewriter/Makefile
+++ b/Typewriter/Makefile
@@ -20,8 +20,6 @@ SVN_REPOSITORIES=     etoile
 SVN_ROOT.etoile=       
http://svn.gna.org/svn/etoile/trunk/Etoile/Services/User/Typewriter
 SVN_MODULE.etoile=     Typewriter
 
-WRKSRC=                        ${WRKDIR}/$(SVN_MODULE.etoile)
-
 .include "../../wip/mk/svn-package.mk"
 
 DEPENDS+=      etoile-core-[0-9]*:../../wip/etoile-core
diff --git a/am-utils-git/Makefile b/am-utils-git/Makefile
index 55f8fda..a22525a 100644
--- a/am-utils-git/Makefile
+++ b/am-utils-git/Makefile
@@ -12,7 +12,6 @@ LICENSE=              original-bsd
 
 GIT_REPOSITORIES=       am-utils
 GIT_REPO.am-utils=     git://git.fsl.cs.sunysb.edu/am-utils-6.2.git
-GIT_MODULE.am-utils=   am-utils-6.2
 
 USE_TOOLS+=            yacc lex perl:run automake gettext-m4
 GNU_CONFIGURE=         yes
diff --git a/apel-git/Makefile b/apel-git/Makefile
index 346393c..41f3c16 100644
--- a/apel-git/Makefile
+++ b/apel-git/Makefile
@@ -11,10 +11,8 @@ LICENSE=     gnu-gpl-v2 OR gnu-gpl-v3
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       http://git.chise.org/git/elisp/apel.git
-GIT_MODULE.master=     apel
 #_GIT_FLAGS+=             --quiet --depth 1
 
-WRKSRC=                        ${WRKDIR}/${PKGBASE}
 INFO_FILES=            yes
 USE_LANGUAGES=         # none
 USE_TOOLS+=            gmake makeinfo
diff --git a/auto-complete-current/Makefile b/auto-complete-current/Makefile
index 1dbad28..0f5af35 100644
--- a/auto-complete-current/Makefile
+++ b/auto-complete-current/Makefile
@@ -16,8 +16,6 @@ GIT_REPOSITORIES=     auto-complete
 GIT_REPO.auto-complete=        git://github.com/auto-complete/auto-complete.git
 .include "../../wip/mk/git-package.mk"
 
-WRKSRC=                        ${WRKDIR}/auto-complete
-
 MESSAGE_SUBST+=                LISPDIR=${EMACS_LISPPREFIX:Q}
 MESSAGE_SUBST+=                PKGBASE=${PKGBASE:Q}
 INSTALLATION_DIRS=     ${EMACS_LISPPREFIX}/${PKGBASE}
diff --git a/boinc-lib/Makefile.common b/boinc-lib/Makefile.common
index 24d1fd0..2304956 100644
--- a/boinc-lib/Makefile.common
+++ b/boinc-lib/Makefile.common
@@ -12,7 +12,6 @@ BOINC_DIR?=           /var/db/boinc
 NO_CHECKSUM=           yes
 
 CVS_ROOT.boinc=                
:pserver:anonymous:@alien.ssl.berkeley.edu:/home/cvs/cvsroot
-CVS_MODULE.boinc=      boinc
 CVS_TAG.boinc=         stable
 
 CVS_ROOT.boinc-seti=   
:pserver:anonymous:@alien.ssl.berkeley.edu:/home/cvs/cvsroot
diff --git a/boinc/Makefile b/boinc/Makefile
index 6f0e3c1..3c18b90 100644
--- a/boinc/Makefile
+++ b/boinc/Makefile
@@ -13,11 +13,8 @@ LICENSE=             gnu-lgpl-v3
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      boinc
 SVN_ROOT.boinc=                
http://boinc.berkeley.edu/svn/tags/boinc_core_release_6_10_50
-SVN_MODULE.boinc=      boinc
 # more at http://boinc.berkeley.edu/trac/wiki/SourceCode
 
-WRKSRC=                        ${WRKDIR}/$(SVN_MODULE.boinc)
-
 CHECK_PORTABILITY_SKIP=        
client/scripts/.svn/text-base/boinc-client.in.svn-base \
                        client/scripts/boinc-client.in
 
diff --git a/bup-git/Makefile b/bup-git/Makefile
index c492dea..ebc209c 100644
--- a/bup-git/Makefile
+++ b/bup-git/Makefile
@@ -23,8 +23,6 @@ PYTHON_VERSIONS_INCOMPATIBLE= 33 # py-fuse-bindings
 GIT_REPOSITORIES=      bup
 GIT_REPO.bup=          git://github.com/bup/bup.git
 
-WRKSRC=                 ${WRKDIR}/bup
-
 TEST_TARGET=   test
 
 MAKE_FLAGS+=   PREFIX=${PREFIX}
diff --git a/calypso/Makefile b/calypso/Makefile
index 3c809d8..868d4d6 100644
--- a/calypso/Makefile
+++ b/calypso/Makefile
@@ -14,8 +14,6 @@ DEPENDS+=     git-base-[0-9]*:../../devel/git-base
 GIT_REPOSITORIES=      calypso
 GIT_REPO.calypso=      git://keithp.com/git/calypso.git
 
-WRKSRC=                ${WRKDIR}/calypso
-
 PYDISTUTILSPKG=                        yes
 
 INSTALLATION_DIRS=     share/examples/calypso
diff --git a/cinelerra-cv/Makefile b/cinelerra-cv/Makefile
index f736767..70aea07 100644
--- a/cinelerra-cv/Makefile
+++ b/cinelerra-cv/Makefile
@@ -11,11 +11,9 @@ LICENSE=     gnu-gpl-v2
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       git://git.cinelerra.org/j6t/cinelerra.git
-GIT_MODULE=            cinelerra
 .include "../../wip/mk/git-package.mk"
 _GIT_FLAGS= # The repository is very large. We don't want git to be quiet.
 
-WRKSRC=                        ${WRKDIR}/cinelerra
 GNU_CONFIGURE=         yes
 USE_TOOLS+=            automake gmake msgmerge pkg-config xgettext
 USE_LIBTOOL=           yes
diff --git a/darcs-to-git/Makefile b/darcs-to-git/Makefile
index c563ae6..cf95808 100644
--- a/darcs-to-git/Makefile
+++ b/darcs-to-git/Makefile
@@ -10,9 +10,7 @@ LICENSE=      mit
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       git://github.com/purcell/${PKGBASE}.git
-GIT_MODULE.master=     darcs-to-git
 
-WRKSRC=                        ${WRKDIR}/${PKGBASE}
 NO_BUILD=              yes
 USE_LANGUAGES= # none
 
diff --git a/davical-current/Makefile b/davical-current/Makefile
index 5992e46..9e8c6d9 100644
--- a/davical-current/Makefile
+++ b/davical-current/Makefile
@@ -15,7 +15,6 @@ LICENSE=      gnu-gpl-v2 AND gnu-gpl-v3
 
 GIT_REPOSITORIES=       master
 GIT_REPO.master=        git://repo.or.cz/${PKGBASE}.git
-GIT_MODULE.master=      ${PKGBASE}
 
 DAVICALDIR=    ${PREFIX}/share/davical
 EGDIR=         ${PREFIX}/share/examples/davical
@@ -28,7 +27,6 @@ DAVICAL_USER?=        ${PGUSER}
 DAVICAL_GROUP?=        ${PGGROUP}
 
 USE_TOOLS=     gmake pax msgfmt perl:build
-WRKSRC=                ${WRKDIR}/${PKGBASE}
 
 PAXDIRS=       htdocs inc dba po scripts
 
diff --git a/debugger-git/Makefile b/debugger-git/Makefile
index ce1bada..e48105e 100644
--- a/debugger-git/Makefile
+++ b/debugger-git/Makefile
@@ -13,7 +13,6 @@ DEPENDS+=             
${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
 
 GIT_REPOSITORIES=      debugger
 GIT_REPO.debugger=     git://github.com/path64/debugger.git
-WRKSRC=                        ${WRKDIR}/debugger
 USE_CMAKE=             yes
 
 USE_LANGUAGES=         c c++
diff --git a/despotify/Makefile b/despotify/Makefile
index 1fa6cbe..78d433d 100644
--- a/despotify/Makefile
+++ b/despotify/Makefile
@@ -13,7 +13,7 @@ COMMENT=      Open Source Spotify client
 USE_TOOLS+=    gmake
 USE_LIBTOOL=   yes
 USE_NCURSES=   yes
-WRKSRC=                ${WRKDIR}/despotify/src
+WRKSRC=                ${WRKDIR}/${SVN_MODULE.despotify}/src
 
 INSTALLATION_DIRS=     bin
 
@@ -22,7 +22,6 @@ post-extract:
 
 SVN_REPOSITORIES=      despotify
 SVN_ROOT.despotify=    http://despotify.svn.sourceforge.net/svnroot/despotify
-SVN_MODULE.despotify=  despotify
 
 PTHREAD_AUTO_VARS=     yes
 .include "../../mk/pthread.buildlink3.mk"
diff --git a/distbb-current/Makefile b/distbb-current/Makefile
index 63bd6d4..4216db0 100644
--- a/distbb-current/Makefile
+++ b/distbb-current/Makefile
@@ -21,8 +21,6 @@ DEPENDS+=     digest-[0-9]*:../../pkgtools/digest
 
 BUILD_DEPENDS+=        mk-configure>=0.21:../../devel/mk-configure
 
-WRKSRC=                        ${WRKDIR}/distbb
-
 USE_LANGUAGES=         # none
 
 REPLACE_SH+=           distbb.in distbb_diff.in slave.in stage_*.in
diff --git a/dragbox/Makefile b/dragbox/Makefile
index 22e945f..e8dd007 100644
--- a/dragbox/Makefile
+++ b/dragbox/Makefile
@@ -13,7 +13,6 @@ LICENSE=      gnu-gpl-v2
 GIT_REPOSITORIES=       dragbox
 GIT_REPO.dragbox=      git://repo.or.cz/dragbox.git
 
-WRKSRC=                ${WRKDIR}/${DISTNAME:S|-${PKGVERSION_NOREV}||:Q}
 GNU_CONFIGURE= yes
 USE_TOOLS+=    gmake
 USE_TOOLS+=    autoconf
diff --git a/ecl/Makefile b/ecl/Makefile
index 839474b..52378a8 100644
--- a/ecl/Makefile
+++ b/ecl/Makefile
@@ -35,16 +35,13 @@ PLIST_SUBST=        
PKGVERSION_MAJOR_MINOR=${PKGVERSION_NOREV:R} \
 ## CVS part:
 
 PKGNAME=               ecl-12.99.0 # it should gave 3 levels in version
-WRKSRC=                        ${WRKDIR}/ecl
 
 CVS_REPOSITORIES=      ecl
 CVS_PROJECT=           ecls
 CVS_ROOT.ecl=          ${CVS_ROOT_SOURCEFORGE}
-CVS_MODULE.ecl=                ecl
 
 # CVS_REPOSITORIES+=   ecl-test
 # CVS_ROOT.ecl-test=   ${CVS_ROOT_SOURCEFORGE}
-# CVS_MODULE.ecl-test= ecl-test
 
 # Change package version to make it differ from released one:
 SUBST_CLASSES+=                        fix-version
diff --git a/emacs-current-nox11/Makefile b/emacs-current-nox11/Makefile
index b013e5a..00c7745 100644
--- a/emacs-current-nox11/Makefile
+++ b/emacs-current-nox11/Makefile
@@ -22,8 +22,6 @@ BUILD_TARGET= bootstrap
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       git://repo.or.cz/emacs.git
 _GIT_FLAGS?=           --depth 1
-GIT_MODULE=            emacs
-GIT_MODULE.master=     emacs
 
 GNU_CONFIGURE=         yes
 INFO_FILES=            yes
@@ -36,8 +34,6 @@ DESCR_SRC=    ${PKGDIR}/../emacs-current/DESCR
 #ESSAGE_SRC=   ${PKGDIR}/../emacs-current/MESSAGE
 PLIST_SRC=     ${PKGDIR}/../emacs-current/PLIST
 
-WRKSRC=                ${WRKDIR}/emacs
-
 CONFIGURE_ARGS+=       --without-x     # nox11
 CONFIGURE_ARGS+=       --srcdir=${WRKSRC:Q}
 CONFIGURE_ARGS+=       --localstatedir=${VARBASE:Q}
diff --git a/emacs-current/Makefile b/emacs-current/Makefile
index 34b86c2..92e4f85 100644
--- a/emacs-current/Makefile
+++ b/emacs-current/Makefile
@@ -21,7 +21,6 @@ CONFLICTS+=   emacs-nox11-[0-9]*
 BUILD_TARGET=  bootstrap
 
 GIT_REPOSITORIES=      master
-GIT_MODULE.master=     emacs
 GIT_REPO.master=       git://repo.or.cz/emacs.git
 _GIT_FLAGS?=           --depth 1
 
@@ -30,8 +29,6 @@ INFO_FILES=           yes
 REPLACE_PERL=          lib-src/grep-changelog
 CHECK_INTERPRETER_SKIP=        bin/grep-changelog
 
-WRKSRC=                ${WRKDIR}/emacs
-
 CONFIGURE_ARGS+=       --srcdir=${WRKSRC:Q}
 CONFIGURE_ARGS+=       --localstatedir=${VARBASE:Q}
 CONFIGURE_ENV+=                GAMEOWN=${GAMEOWN:Q}
diff --git a/emacs-ditz/Makefile b/emacs-ditz/Makefile
index b6f7136..2f7c79f 100644
--- a/emacs-ditz/Makefile
+++ b/emacs-ditz/Makefile
@@ -11,9 +11,7 @@ LICENSE=      gnu-gpl-v3
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       git://github.com/kentaro/${PKGBASE}.git
-GIT_MODULE.master=     ${PKGBASE}
 
-WRKSRC=                        ${WRKDIR}/${PKGBASE}
 USE_LANGUAGES= # none
 
 do-build:
diff --git a/ffmpeg-current/Makefile b/ffmpeg-current/Makefile
index 37ac8e4..cced9fb 100644
--- a/ffmpeg-current/Makefile
+++ b/ffmpeg-current/Makefile
@@ -7,9 +7,7 @@ COMMENT=        Decoding, encoding and streaming software
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       git://source.ffmpeg.org/ffmpeg.git
-GIT_MODULE.master=     ffmpeg
 # _GIT_FLAGS?=         --depth 1
-WRKSRC=                        ${WRKDIR}/ffmpeg
 
 CONFIGURE_ARGS+=       --enable-avfilter
 #CONFIGURE_ARGS+=      --enable-avfilter-lavf
diff --git a/fricas/Makefile b/fricas/Makefile
index 02bc573..daa5fac 100644
--- a/fricas/Makefile
+++ b/fricas/Makefile
@@ -13,8 +13,6 @@ LICENSE=              modified-bsd
 
 BUILD_DEPENDS+=                noweb-[0-9]*:../../devel/noweb
 
-WRKSRC=                        ${WRKDIR}/${PKGNAME_NOREV}
-
 GNU_CONFIGURE=         yes
 USE_TOOLS+=            gmake
 
@@ -42,9 +40,6 @@ post-build:
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      fricas
 SVN_ROOT.fricas=       http://fricas.svn.sourceforge.net/svnroot/fricas/trunk
-SVN_MODULE.fricas=     fricas
-
-WRKSRC=                        ${WRKDIR}/fricas
 
 .include "../mk/svn-package.mk"
 .endif
diff --git a/fuse-google-drive/Makefile b/fuse-google-drive/Makefile
index 76e7c3f..731664a 100644
--- a/fuse-google-drive/Makefile
+++ b/fuse-google-drive/Makefile
@@ -19,8 +19,6 @@ GNU_CONFIGURE=        yes
 USE_TOOLS+=    aclocal automake autoreconf gmake pkg-config
 USE_LIBTOOL=   yes
 
-WRKSRC=                ${WRKDIR}/${PKGBASE}
-
 pre-configure:
        set -e; cd ${WRKSRC}; \
        autoreconf -vif
diff --git a/fuzzy-el-current/Makefile b/fuzzy-el-current/Makefile
index 8356c6a..06de8c6 100644
--- a/fuzzy-el-current/Makefile
+++ b/fuzzy-el-current/Makefile
@@ -12,8 +12,6 @@ GIT_REPOSITORIES=     fuzzy-el
 GIT_REPO.fuzzy-el=     git://github.com/auto-complete/fuzzy-el.git
 .include "../../wip/mk/git-package.mk"
 
-WRKSRC=                        ${WRKDIR}/fuzzy-el
-
 INSTALLATION_DIRS=     ${EMACS_LISPPREFIX}/${PKGBASE}
 
 do-build:
diff --git a/git-modes-git/Makefile b/git-modes-git/Makefile
index 8bb8c6f..72924c1 100644
--- a/git-modes-git/Makefile
+++ b/git-modes-git/Makefile
@@ -5,14 +5,11 @@ LICENSE=      gnu-gpl-v3
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       https://github.com/magit/git-modes.git
-GIT_MODULE.master=     git-modes
 
 MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
 HOMEPAGE=      https://github.com/magit/git-modes
 COMMENT=       Git-modes submodule for magit.el
 
-WRKSRC=                ${WRKDIR}/git-modes
-
 USE_TOOLS+=    gmake
 
 BUILD_TARGET=  lisp
diff --git a/gmrender-resurrect-git/Makefile b/gmrender-resurrect-git/Makefile
index 77bafcc..c6c8712 100644
--- a/gmrender-resurrect-git/Makefile
+++ b/gmrender-resurrect-git/Makefile
@@ -25,7 +25,6 @@ DEPENDS+=             
gst-plugins1-soup-[0-9]*:../../net/gst-plugins1-soup
 DEPENDS+=              
gst-plugins1-ugly-[0-9]*:../../multimedia/gst-plugins1-ugly
 DEPENDS+=              
gst-plugins1-vorbis-[0-9]*:../../audio/gst-plugins1-vorbis
 
-WRKSRC=                        ${WRKDIR}/gmrender-resurrect
 GNU_CONFIGURE=         YES
 USE_TOOLS+=            autoconf automake autoreconf pkg-config
 
diff --git a/gnubg/Makefile b/gnubg/Makefile
index 26abe38..03a5fc7 100644
--- a/gnubg/Makefile
+++ b/gnubg/Makefile
@@ -11,7 +11,6 @@ LICENSE=              gnu-gpl-v3
 
 CVS_REPOSITORIES=      gnubg
 CVS_ROOT.gnubg=                ${CVS_ROOT_GNU}/gnubg
-CVS_MODULE.gnubg=      gnubg
 
 GNU_CONFIGURE= yes
 USE_LIBTOOL=   yes
diff --git a/gtk-gnutella-current/Makefile b/gtk-gnutella-current/Makefile
index 6faa06c..78ce1f3 100644
--- a/gtk-gnutella-current/Makefile
+++ b/gtk-gnutella-current/Makefile
@@ -30,8 +30,6 @@ CONFLICTS=            gtk-gnutella-*
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       http://github.com/gtk-gnutella/gtk-gnutella.git
 
-WRKSRC=                        ${WRKDIR}/gtk-gnutella
-
 NO_CHECKSUM=           yes
 
 USE_BUILTIN.gettext=   no
diff --git a/khal-git/Makefile b/khal-git/Makefile
index d08b0c2..6aee539 100644
--- a/khal-git/Makefile
+++ b/khal-git/Makefile
@@ -28,7 +28,6 @@ DEPENDS+=             
${PYPKGPREFIX}-setproctitle-[0-9]*:../../sysutils/py-setproctitle
 
 PYTHON_VERSIONED_DEPENDENCIES= dateutil
 
-WRKSRC=                        ${WRKDIR}/khal
 INSTALLATION_DIRS=     share/doc/khal
 REPLACE_PYTHON+=       khal/*/*.py
 REPLACE_PYTHON+=       khal/*.py
diff --git a/leim-current/Makefile b/leim-current/Makefile
index e38ec31..9107b18 100644
--- a/leim-current/Makefile
+++ b/leim-current/Makefile
@@ -13,10 +13,9 @@ PKG_DESTDIR_SUPPORT= none
 
 CVS_REPOSITORIES=      emacs
 CVS_ROOT.emacs=                ${CVS_ROOT_GNU}/emacs
-CVS_MODULE.emacs=      emacs
 
 #WRKSRC=               ${WRKDIR}/emacs-${VERSION}/leim
-WRKSRC=                ${WRKDIR}/emacs/leim
+WRKSRC=                ${WRKDIR}/${CVS_MODULE.emacs}/leim
 PATCHDIR=      ${PKGDIR}/../emacs-current/patches
 
 GNU_CONFIGURE= yes
diff --git a/lgogdownloader-git/Makefile b/lgogdownloader-git/Makefile
index 9aa2d31..e814411 100644
--- a/lgogdownloader-git/Makefile
+++ b/lgogdownloader-git/Makefile
@@ -14,7 +14,6 @@ BUILD_DEPENDS+=       
help2man-[0-9]*:../../converters/help2man
 GIT_REPOSITORIES=              lgogdownloader
 GIT_REPO.lgogdownloader=       git://github.com/Sude-/lgogdownloader.git
 
-WRKSRC=                ${WRKDIR}/lgogdownloader
 USE_LANGUAGES= c++
 USE_TOOLS+=    gmake gunzip
 LDFLAGS+=      ${COMPILER_RPATH_FLAG}${BUILDLINK_PREFIX.boost-libs}/lib
diff --git a/libcpu/Makefile b/libcpu/Makefile
index aed40c3..e61a965 100644
--- a/libcpu/Makefile
+++ b/libcpu/Makefile
@@ -12,13 +12,11 @@ COMMENT=    Anything-to-anything binary translation library
 
 USE_TOOLS+=    gmake flex bison
 USE_LANGUAGES+=        c c++
-WRKSRC=                ${WRKDIR}/libcpu
 
 BUILDLINK_TRANSFORM+=  rm:-Werror
 
 SVN_REPOSITORIES=      libcpu
 SVN_ROOT.libcpu=       https://svn.libcpu.org/libcpu/trunk/
-SVN_MODULE.libcpu=     libcpu
 SVN_CERTS=             ${FILESDIR}/7ca4b79223f0e21f5a54209fea0d32f7
 
 .include "../../wip/mk/svn-package.mk"
diff --git a/lilypond-git/Makefile b/lilypond-git/Makefile
index 7954cbf..cc544df 100644
--- a/lilypond-git/Makefile
+++ b/lilypond-git/Makefile
@@ -41,8 +41,6 @@ USE_TOOLS+=           autoconf automake autoreconf bison flex 
gmake gs:run makeinfo perl
 USE_TOOLS+=            texi2html zip
 MAKE_FILE=             GNUmakefile
 
-WRKSRC=                        ${WRKDIR}/lilypond
-
 .include "../../mk/bsd.prefs.mk"
 
 TEXINFO_REQD=          4.11
diff --git a/linuxigd-current/Makefile b/linuxigd-current/Makefile
index 0222290..e513d1a 100644
--- a/linuxigd-current/Makefile
+++ b/linuxigd-current/Makefile
@@ -16,9 +16,6 @@ USE_TOOLS+=   gmake pkg-config
 CVS_REPOSITORIES=      linux-igd
 CVS_PROJECT=           linux-igd
 CVS_ROOT.linux-igd=    ${CVS_ROOT_SOURCEFORGE:Q}
-CVS_MODULE.linux-igd=  linux-igd
-
-WRKSRC=                ${WRKDIR}/linux-igd
 
 .include "options.mk"
 
diff --git a/llvm/Makefile b/llvm/Makefile
index 3423b7a..f8de0bd 100644
--- a/llvm/Makefile
+++ b/llvm/Makefile
@@ -51,10 +51,8 @@ post-install:
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      llvm
 SVN_ROOT.llvm=         http://llvm.org/svn/llvm-project/llvm/trunk
-SVN_MODULE.llvm=       llvm
 
 PKGNAME=               llvm-3.99
-WRKSRC=                        ${WRKDIR}/${SVN_MODULE.llvm}
 
 CHECK_PORTABILITY_SKIP= utils/buildit/.svn/text-base/build_llvm.svn-base \
                        utils/buildit/build_llvm
diff --git a/lmdbg-current/Makefile b/lmdbg-current/Makefile
index ff661d7..9443ad9 100644
--- a/lmdbg-current/Makefile
+++ b/lmdbg-current/Makefile
@@ -20,8 +20,6 @@ DEPENDS+=             pipestatus-[0-9]*:../../devel/pipestatus
 DEPENDS+=              runawk>=1.3.1:../../lang/runawk
 #DEPENDS+=             gdb-[0-9]*:../../devel/gdb
 
-WRKSRC=                        ${WRKDIR}/lmdbg
-
 ONLY_FOR_COMPILER=     gcc icc clang
 NOT_FOR_PLATFORM=      Darwin-*-*
 
diff --git a/magit-git/Makefile b/magit-git/Makefile
index 7277422..a5a3c9d 100644
--- a/magit-git/Makefile
+++ b/magit-git/Makefile
@@ -10,9 +10,7 @@ LICENSE=      gnu-gpl-v3
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       https://github.com/magit/magit.git
-GIT_MODULE.master=     magit
 
-WRKSRC=                ${WRKDIR}/${PKGBASE}
 NO_CONFIGURE=  yes
 USE_LANGUAGES= # none
 USE_TOOLS+=    gmake makeinfo
diff --git a/maxima/Makefile b/maxima/Makefile
index 70ae343..63c448e 100644
--- a/maxima/Makefile
+++ b/maxima/Makefile
@@ -31,8 +31,6 @@ PKGNAME=              maxima-5.99
 GIT_REPOSITORIES=      maxima
 GIT_REPO.maxima=       git://maxima.git.sourceforge.net/gitroot/maxima/maxima
 
-WRKSRC=                ${WRKDIR}/maxima
-
 USE_TOOLS+=            aclocal automake autoconf
 
 CONFIGURE_ENV+=                VERSION=$(PKGVERSION_NOREV) 
ac_cv_prog_git_found=false
diff --git a/mk-configure/Makefile b/mk-configure/Makefile
index c51e9aa..056c82c 100644
--- a/mk-configure/Makefile
+++ b/mk-configure/Makefile
@@ -22,7 +22,6 @@ USE_LANGUAGES=                c
 BUILD_TARGET=          all all-doc
 INSTALL_TARGET=                install install-doc
 
-WRKSRC=                        ${WRKDIR}/mk-configure
 MAKE_PROGRAM=          ${PREFIX}/bin/bmake
 
 MAKE_ENV+=             MANDIR=${PREFIX}/${PKGMANDIR} \
diff --git a/mpg123-nightly/Makefile b/mpg123-nightly/Makefile
index 64f943f..5e31970 100644
--- a/mpg123-nightly/Makefile
+++ b/mpg123-nightly/Makefile
@@ -15,8 +15,6 @@ USE_TOOLS+=           automake autoreconf date perl pkg-config
 GNU_CONFIGURE=         yes
 USE_LIBTOOL=           yes
 
-WRKSRC=                        ${WRKDIR}/mpg123
-
 CONFIGURE_ARGS+=       --with-optimization=3
 CONFIGURE_ARGS+=       --with-audio=sun
 .if ${MACHINE_ARCH} == "i386"
@@ -42,7 +40,6 @@ CPPFLAGS+=            -DDEVOSSSOUND=\"${DEVOSSSOUND:Q}\"
 SVN_REPOSITORIES=      mpg123
 SVN_TAG=               {${MPG123_TAG}}
 SVN_ROOT.mpg123=       svn://orgis.org/mpg123/trunk
-SVN_MODULE.mpg123=     mpg123
 
 pre-configure:
        cd ${WRKSRC} && autoreconf -iv
diff --git a/mplayer/Makefile b/mplayer/Makefile
index debb294..71f4371 100644
--- a/mplayer/Makefile
+++ b/mplayer/Makefile
@@ -10,7 +10,6 @@ CVS_REPOSITORIES=     mplayer ffmpeg
 CVS_ROOT.mplayer=      :pserver:anonymous:@mplayerhq.hu:/cvsroot/mplayer
 CVS_MODULE.mplayer=    main
 CVS_ROOT.ffmpeg=       :pserver:anonymous:@mplayerhq.hu:/cvsroot/ffmpeg
-CVS_MODULE.ffmpeg=     ffmpeg
 
 .include "../../wip/mk/cvs-package.mk"
 
diff --git a/mwf-designer/Makefile b/mwf-designer/Makefile
index e7e5053..c5c0acf 100644
--- a/mwf-designer/Makefile
+++ b/mwf-designer/Makefile
@@ -19,8 +19,6 @@ SVN_MODULE.mono=      ${DISTNAME}
 
 NO_CHECKSUM=   yes
 
-WRKSRC=                ${WRKDIR}/${DISTNAME}
-
 SUBST_CLASSES+=                        fix-prefix
 SUBST_STAGE.fix-prefix=                pre-install
 SUBST_MESSAGE.fix-prefix=      Fixing prefix directory.
diff --git a/navi2ch-current/Makefile b/navi2ch-current/Makefile
index 1300e51..61ef6e5 100644
--- a/navi2ch-current/Makefile
+++ b/navi2ch-current/Makefile
@@ -3,7 +3,6 @@
 DISTNAME=      navi2ch-2.0.0
 PKGNAME=       ${EMACS_PKGNAME_PREFIX}navi2ch-current-2.0.0
 CATEGORIES=    chat
-WRKSRC=                ${WRKDIR}/navi2ch
 
 CONFLICTS+=    navi2ch-[0-9]*
 
@@ -14,7 +13,6 @@ LICENSE=      gnu-gpl-v2
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       
git://navi2ch.git.sourceforge.net/gitroot/navi2ch/navi2ch
-GIT_MODULE.master=     navi2ch
 
 GNU_CONFIGURE= yes
 USE_TOOLS+=    gmake
diff --git a/necpp-git/Makefile b/necpp-git/Makefile
index bf25e7a..6056e57 100644
--- a/necpp-git/Makefile
+++ b/necpp-git/Makefile
@@ -11,7 +11,6 @@ LICENSE=              gnu-gpl-v2
 
 GIT_REPOSITORIES=      necpp
 GIT_REPO.necpp=        git://github.com/tmolteno/necpp.git
-WRKSRC=                        ${WRKDIR}/necpp
 
 GNU_CONFIGURE=         yes
 CONFIGURE_ARGS+=       --without-lapack
diff --git a/nih-current/Makefile b/nih-current/Makefile
index a68c5a7..88cf20c 100644
--- a/nih-current/Makefile
+++ b/nih-current/Makefile
@@ -26,7 +26,6 @@ SUPERSEDES=           pkgnih-[0-9]*
 BUILD_TARGET=          all all-doc
 INSTALL_TARGET=                install install-doc
 
-WRKSRC=                        ${WRKDIR}/pkgnih
 EGDIR=                 ${PREFIX}/share/examples/nih
 
 CONF_FILES=            ${EGDIR}/nih.conf \
diff --git a/objfw-git/Makefile b/objfw-git/Makefile
index b0310f0..088c3ee 100644
--- a/objfw-git/Makefile
+++ b/objfw-git/Makefile
@@ -13,7 +13,6 @@ GIT_REPOSITORIES=     objfw
 # Use GitHub mirror because pkgsrc git refuses to clone from https
 GIT_REPO.objfw=                git://github.com/Midar/objfw.git
 
-WRKSRC=                        ${WRKDIR}/objfw
 USE_TOOLS=             aclocal automake
 GNU_CONFIGURE=         yes
 USE_LANGUAGES=         objc
diff --git a/openaxiom/Makefile b/openaxiom/Makefile
index 78ca5d8..54bead5 100644
--- a/openaxiom/Makefile
+++ b/openaxiom/Makefile
@@ -53,9 +53,6 @@ CHECK_WRKREF_SKIP=     lib/*/hypertex lib/*/viewAlone 
lib/*/view2D lib/*/view3D
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      open-axiom
 SVN_ROOT.open-axiom=   http://open-axiom.svn.sf.net/svnroot/open-axiom/trunk
-SVN_MODULE.open-axiom= open-axiom
-
-WRKSRC=                        ${WRKDIR}/open-axiom
 
 PKGNAME=               openaxiom-1.99  # VCS-based
 
diff --git a/opentracker-current/Makefile b/opentracker-current/Makefile
index 5ea22cb..f443450 100644
--- a/opentracker-current/Makefile
+++ b/opentracker-current/Makefile
@@ -7,13 +7,10 @@ MAINTAINER=           pkgsrc-users%NetBSD.org@localhost
 HOMEPAGE=              http://erdgeist.org/arts/software/opentracker/
 COMMENT=               High performance bittorrent tracker
 
-WRKSRC=                        ${WRKDIR}/opentracker
-
 CFLAGS+=               -I${BUILDLINK_PREFIX.libowfat}/include/libowfat
 
 CVS_REPOSITORIES=      opentracker
 CVS_ROOT.opentracker=  :pserver:anoncvs:@cvs.erdgeist.org:/home/cvsroot
-CVS_MODULE.opentracker=        opentracker
 
 INSTALLATION_DIRS=     bin share/doc/opentracker
 
diff --git a/org-caldav-git/Makefile b/org-caldav-git/Makefile
index 95f93b9..f2107ac 100644
--- a/org-caldav-git/Makefile
+++ b/org-caldav-git/Makefile
@@ -11,7 +11,6 @@ COMMENT=              Caldav sync for Emacs Orgmode
 GIT_REPOSITORIES=      org-caldav
 GIT_REPO.org-caldav=           git://github.com/dengste/org-caldav.git
 
-WRKSRC=                        ${WRKDIR}/org-caldav
 EGG_NAME=              ${DISTNAME}.dev
 INSTALLATION_DIRS=     share/doc/org-caldav
 INSTALLATION_DIRS+=    ${EMACS_LISPPREFIX}/${PKGBASE}
diff --git a/p5-Packager-Utils/Makefile b/p5-Packager-Utils/Makefile
index afb6418..1ee10e5 100644
--- a/p5-Packager-Utils/Makefile
+++ b/p5-Packager-Utils/Makefile
@@ -18,7 +18,6 @@ PKGSRC_SETENV=                GIT_SSL_NO_VERIFY=true
 
 INSTALLATION_DIRS=     share/examples/p5-Packager-Utils
 
-WRKSRC=                        ${WRKDIR}/Packager-Utils
 PERL5_MODULE_TYPE=     Module::Build
 PERL5_PACKLIST=                auto/Packager/Utils/.packlist
 
diff --git a/pan2-git/Makefile b/pan2-git/Makefile
index 998809d..e56c1e8 100644
--- a/pan2-git/Makefile
+++ b/pan2-git/Makefile
@@ -14,12 +14,8 @@ LICENSE=             gnu-gpl-v2
 # http://lists.gnu.org/archive/html/pan-users/ .
 GIT_REPOSITORIES=      gnome
 GIT_REPO.gnome=        git://git.gnome.org/pan2
-GIT_MODULE.gnome=      pan2
 GIT_REPO.aexoden=      git://github.com/aexoden/pan2.git
-GIT_MODULE.aexoden=    pan2
 GIT_REPO.khaley=       git://github.com/lostcoder/pan2.git
-GIT_MODULE.khaley=     pan2
-WRKSRC=                        ${WRKDIR}/pan2
 CONFIGURE_SCRIPT=      autogen.sh
 GNU_CONFIGURE=         YES
 
diff --git a/php-libawl-git/Makefile b/php-libawl-git/Makefile
index e13b7c8..442fed8 100644
--- a/php-libawl-git/Makefile
+++ b/php-libawl-git/Makefile
@@ -15,9 +15,6 @@ LICENSE=      gnu-gpl-v2
 
 GIT_REPOSITORIES=       awl
 GIT_REPO.awl=          git://repo.or.cz/awl.git
-GIT_MODULE.awl=                awl
-
-WRKSRC=                ${WRKDIR}/awl
 
 .include "../../lang/php/phpversion.mk"
 
diff --git a/pilemc-svn/Makefile b/pilemc-svn/Makefile
index 9d168bb..d37334b 100644
--- a/pilemc-svn/Makefile
+++ b/pilemc-svn/Makefile
@@ -11,9 +11,6 @@ COMMENT=      Tool for the simulation of pile-up events at 
HepMC level
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      pilemc
 SVN_ROOT.pilemc=               http://pilemc.hepforge.org/svn/trunk/
-SVN_MODULE.pilemc=     pilemc
-
-WRKSRC=                        ${WRKDIR}/$(SVN_MODULE.pilemc)
 
 VERSION=       1.2alpha0
 GNU_CONFIGURE=         yes
diff --git a/pkg_summary-utils/Makefile b/pkg_summary-utils/Makefile
index f3e9401..31797ba 100644
--- a/pkg_summary-utils/Makefile
+++ b/pkg_summary-utils/Makefile
@@ -41,8 +41,6 @@ USE_TOOLS+=           gzip:run
 
 PKG_INSTALLATION_TYPES=        overwrite pkgviews
 
-WRKSRC=                ${WRKDIR}/pkg_summary-utils
-
 EGDIR=         ${PREFIX}/share/examples/pkg_summary-utils
 
 CONF_FILES=    ${EGDIR}/pkg_digger.conf ${PKG_SYSCONFDIR}/pkg_digger.conf
diff --git a/popup-el-current/Makefile b/popup-el-current/Makefile
index 10b9f92..02531fc 100644
--- a/popup-el-current/Makefile
+++ b/popup-el-current/Makefile
@@ -13,8 +13,6 @@ GIT_REPOSITORIES=     popup-el
 GIT_REPO.popup-el=     git://github.com/auto-complete/popup-el.git
 .include "../../wip/mk/git-package.mk"
 
-WRKSRC=                        ${WRKDIR}/popup-el
-
 INSTALLATION_DIRS=     ${EMACS_LISPPREFIX}/${PKGBASE}
 
 do-build:
diff --git a/prpltwtr/Makefile b/prpltwtr/Makefile
index d537845..9e81bde 100644
--- a/prpltwtr/Makefile
+++ b/prpltwtr/Makefile
@@ -13,7 +13,6 @@ LICENSE=              gnu-gpl-v2
 GIT_REPOSITORIES=       prpltwtr
 GIT_REPO.prpltwtr=     git://github.com/mikeage/prpltwtr.git
 
-WRKSRC=                        ${WRKDIR}/prpltwtr
 USE_TOOLS+=            autoconf
 USE_TOOLS+=            automake
 HAS_CONFIGURE=         yes
diff --git a/purple-translate/Makefile b/purple-translate/Makefile
index a6a2a65..ddfbd23 100644
--- a/purple-translate/Makefile
+++ b/purple-translate/Makefile
@@ -14,7 +14,6 @@ SVN_REPOSITORIES=     translate
 SVN_ROOT.translate=    http://purple-translate.googlecode.com/svn/trunk/
 SVN_MODULE.translate=  purple-translate
 
-WRKSRC=                        ${WRKDIR}/purple-translate
 BUILD_TARGET=          purple-translate.so
 
 SUBST_CLASSES+=                prefix
diff --git a/pwnat/Makefile b/pwnat/Makefile
index 2ba22ea..964dd99 100644
--- a/pwnat/Makefile
+++ b/pwnat/Makefile
@@ -12,8 +12,6 @@ BUILD_DEPENDS+=       
${PYPKGPREFIX}-docutils-[0-9]*:../../textproc/py-docutils
 
 GIT_REPOSITORIES=      samyk
 GIT_REPO.samyk=        git://github.com/samyk/${PKGBASE}.git
-GIT_MODULE.samyk=      ${PKGBASE}
-WRKSRC=                ${WRKDIR}/${PKGBASE}
 
 USE_TOOLS=             gmake
 NO_CONFIGURE=          YES
diff --git a/py-percol/Makefile b/py-percol/Makefile
index 2414f99..f552e38 100644
--- a/py-percol/Makefile
+++ b/py-percol/Makefile
@@ -12,8 +12,6 @@ LICENSE=      mit
 
 GIT_REPOSITORIES=      mooz
 GIT_REPO.mooz=         git://github.com/mooz/percol.git
-GIT_MODULE.mooz=       percol
-WRKSRC=                        ${WRKDIR}/percol
 
 SUBST_CLASSES+=        migemo
 SUBST_STAGE.migemo=    pre-build
diff --git a/py-prop/Makefile b/py-prop/Makefile
index aa82c2e..0693298 100644
--- a/py-prop/Makefile
+++ b/py-prop/Makefile
@@ -15,9 +15,7 @@ DEPENDS+=     ${PYPKGPREFIX}-scipy>=0.7.0:../../math/py-scipy
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      pyprop
 SVN_ROOT.pyprop=  http://pyprop.googlecode.com/svn/trunk
-SVN_MODULE.pyprop=     pyprop
 
-WRKSRC=                        ${WRKDIR}/pyprop
 CHECK_PORTABILITY_SKIP=  extern/blitz/source/configure 
extern/blitz/source/.svn/text-base/configure.svn-base
 
 .include "../../graphics/py-matplotlib/buildlink3.mk"
diff --git a/py-pydec/Makefile b/py-pydec/Makefile
index 1a468e4..3dce581 100644
--- a/py-pydec/Makefile
+++ b/py-pydec/Makefile
@@ -16,9 +16,7 @@ DEPENDS+=     ${PYPKGPREFIX}-scipy>=0.7.0:../../math/py-scipy
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      pydec
 SVN_ROOT.pydec=  http://pydec.googlecode.com/svn/trunk
-SVN_MODULE.pydec=      pydec
 
-WRKSRC=                        ${WRKDIR}/pydec
 PLIST_SUBST+=  PYVERSSUFFIX=${PYVERSSUFFIX:Q}
 PLIST_SUBST+=  EGG_INFODIR=${EGG_NAME}-py${PYVERSSUFFIX}.egg-info
 
diff --git a/py-scikits_hydroclimpy/Makefile b/py-scikits_hydroclimpy/Makefile
index 0f8b842..d8f9f9a 100644
--- a/py-scikits_hydroclimpy/Makefile
+++ b/py-scikits_hydroclimpy/Makefile
@@ -16,9 +16,6 @@ USE_LANGUAGES+= c  fortran
 # Get it from Subversion repository:
 SVN_REPOSITORIES=      hydroclimpy
 SVN_ROOT.hydroclimpy= http://svn.scipy.org/svn/scikits/trunk/hydroclimpy
-SVN_MODULE.hydroclimpy=        hydroclimpy
-
-WRKSRC=                        ${WRKDIR}/hydroclimpy
 
 PLIST_SUBST+=  PYVERSSUFFIX=${PYVERSSUFFIX}
 
diff --git a/rpki-svn/Makefile b/rpki-svn/Makefile
index 135de96..2bf4f79 100644
--- a/rpki-svn/Makefile
+++ b/rpki-svn/Makefile
@@ -13,7 +13,6 @@ LICENSE=      original-bsd
 
 SVN_REPOSITORIES=      rpki
 SVN_ROOT.rpki=         http://subvert-rpki.hactrn.net/
-SVN_MODULE.rpki=       rpki
 NO_CHECKSUM=           yes
 
 DEPENDS+=      ${PYPKGPREFIX}-django-[0-9]*:../../www/py-django
@@ -25,8 +24,6 @@ CONFIGURE_ARGS+=      --prefix=${PREFIX:Q}
 #CONFIGURE_ARGS+=      --disable-django
 #CONFIGURE_ARGS+=      --disable-system-openssl
 
-WRKSRC=                        ${WRKDIR}/rpki
-
 INSTALL_MAKE_FLAGS+=   prefix=${DESTDIR}${PREFIX}
 
 INSTALLATION_DIRS=     bin
diff --git a/ruby-ditz/Makefile b/ruby-ditz/Makefile
index 1a94bac..6c88d88 100644
--- a/ruby-ditz/Makefile
+++ b/ruby-ditz/Makefile
@@ -11,15 +11,11 @@ LICENSE=    gnu-gpl-v3
 
 .include "../../lang/ruby/rubyversion.mk"
 
+GIT_REPOSITORIES=      ditz
 .if ${RUBY_VER} == "193"
-GIT_REPOSITORIES=      ruby19
-GIT_REPO.ruby19=       git://github.com/chriskempson/Ditz-for-Ruby-1.9.2.git
-GIT_MODULE.ruby19=     Ditz-for-Ruby-1.9.2
-WRKSRC=                                ${WRKDIR}/${GIT_MODULE.ruby19}
+GIT_REPO.ditz= git://github.com/chriskempson/Ditz-for-Ruby-1.9.2.git
 .else
-GIT_REPOSITORIES=      mainline
-GIT_REPO.mainline=     git://gitorious.org/ditz/mainline.git
-WRKSRC=                ${WRKDIR}/${GIT_MODULE.mainline}
+GIT_REPO.ditz= git://gitorious.org/ditz/mainline.git
 .endif
 
 GEM_SPECFILE=  ${WRKSRC}/ditz.gemspec
diff --git a/sbcl/Makefile b/sbcl/Makefile
index 696483e..287e6d2 100644
--- a/sbcl/Makefile
+++ b/sbcl/Makefile
@@ -20,8 +20,6 @@ COMMENT=              SBCL, a Common Lisp implementation
 USE_TOOLS+=            gmake gtar:run patch
 PKG_INSTALLATION_TYPES=        overwrite pkgviews
 
-WRKSRC=                        ${WRKDIR}/${PKGNAME_NOREV}
-
 .include "../../mk/bsd.prefs.mk"
 
 #
@@ -95,7 +93,6 @@ PLIST_SUBST+= SUFX64=
 
 GIT_REPOSITORIES=      sbcl
 GIT_REPO.sbcl=         git://git.code.sf.net/p/sbcl/sbcl
-WRKSRC=                        ${WRKDIR}/sbcl
 DISTNAME=
 PKGNAME=               sbcl-1.99
 
diff --git a/scummvm-nightly/Makefile b/scummvm-nightly/Makefile
index 49e8986..0927c31 100644
--- a/scummvm-nightly/Makefile
+++ b/scummvm-nightly/Makefile
@@ -15,7 +15,6 @@ USE_LANGUAGES=        c c++
 HAS_CONFIGURE= yes
 CONFIGURE_ARGS+=--prefix=${LOCALBASE}
 CONFIGURE_ARGS+=--mandir=${LOCALBASE}/${PKGMANDIR}
-WRKSRC=                ${WRKDIR}/scummvm
 
 .include "options.mk"
 
@@ -23,7 +22,6 @@ SVN_REPOSITORIES=     scummvm
 SVN_TAG=               {${SCM_TAG}}
 SVN_CERTS=             files/dbd39a6ed632407eb1510e5009956117
 SVN_ROOT.scummvm=      
https://scummvm.svn.sourceforge.net/svnroot/scummvm/scummvm/trunk
-SVN_MODULE.scummvm=    scummvm
 
 .include "../../wip/mk/svn-package.mk"
 
diff --git a/sdif-git/Makefile b/sdif-git/Makefile
index 2b11627..c916b6c 100644
--- a/sdif-git/Makefile
+++ b/sdif-git/Makefile
@@ -10,10 +10,8 @@ LICENSE=     mit
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       https://github.com/kaz-utashiro/sdif
-GIT_MODULE.master=     sdif
 
 DEPENDS+=      p5-Text-Glob-[0-9]*:../../textproc/p5-Text-Glob
-WRKSRC=                ${WRKDIR}/${PKGBASE}
 USE_TOOLS+=    perl:run
 USE_LANGUAGES= # none
 
diff --git a/simulavr-git/Makefile b/simulavr-git/Makefile
index a07209c..d56f8a6 100644
--- a/simulavr-git/Makefile
+++ b/simulavr-git/Makefile
@@ -13,7 +13,6 @@ BUILD_DEPENDS+=               
doxygen-[0-9]*:../../devel/doxygen
 BUILD_DEPENDS+=                avr-libc-[0-9]*:../../wip/avr-libc
 
 GIT_REPOSITORIES=      master
-GIT_MODULE.master=     simulavr
 GIT_REPO.master=       git://git.savannah.nongnu.org/simulavr.git
 GIT_FLAGS?=            --depth 1
 
@@ -24,7 +23,6 @@ USE_LIBTOOL=          yes
 GNU_CONFIGURE=         yes
 INFO_FILES=            yes
 USE_PKGLOCALEDIR=      yes
-WRKSRC=                        ${WRKDIR}/${PKGBASE}
 
 CONFIGURE_ARGS+=       --enable-python=python${PYVERSSUFFIX}
 CONFIGURE_ARGS+=       --with-bfd=${PREFIX}/avr
diff --git a/tamago-anthy/Makefile b/tamago-anthy/Makefile
index cc50628..2085578 100644
--- a/tamago-anthy/Makefile
+++ b/tamago-anthy/Makefile
@@ -30,14 +30,12 @@ INFO_FILES= yes
 DEPENDS+=      anthy-[0-9]*:../../inputmethod/anthy
 
 GIT_REPOSITORIES=      master
-GIT_MODULE.master=     egg
 GIT_REPO.master=       git://git.debian.org/git/pkg-anthy/egg.git
 # http://mail-index.netbsd.org/pkgsrc-wip-discuss/2014/01/20/msg002556.html
 # By unknown reason, tamago repository does not accept --depth=1, see TODO
 _GIT_FLAGS=    # empty 
 
 GNU_CONFIGURE= yes
-WRKSRC=                        ${WRKDIR}/egg
 
 .include "../../editors/emacs/modules.mk"
 
diff --git a/tc-git/Makefile b/tc-git/Makefile
index f20d2a1..fa97aee 100644
--- a/tc-git/Makefile
+++ b/tc-git/Makefile
@@ -10,7 +10,6 @@ COMMENT=              2-stroke non associative direct input 
for Kanji
 # tc is in GPL2, kw is unknown for the moment
 LICENSE=               gnu-gpl-v2
 
-WRKSRC=                        ${WRKDIR}/tc
 INSTALLATION_DIRS=     ${EMACS_INFOPREFIX} \
                        ${EMACS_LISPPREFIX}/${DISTNAME} \
                        share/examples/tc
diff --git a/twittering-mode/Makefile b/twittering-mode/Makefile
index dda2e5f..ba76214 100644
--- a/twittering-mode/Makefile
+++ b/twittering-mode/Makefile
@@ -12,10 +12,8 @@ LICENSE=     gnu-gpl-v2
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       https://github.com/hayamiz/twittering-mode.git
-GIT_MODULE.master=     twittering-mode
 PKGSRC_SETENV=         GIT_SSL_NO_VERIFY=true
 
-WRKSRC=                ${WRKDIR}/twittering-mode
 NO_BUILD=      yes
 USE_LANGUAGES= # none
 
diff --git a/uhd-git/Makefile b/uhd-git/Makefile
index bb3a297..f7783db 100644
--- a/uhd-git/Makefile
+++ b/uhd-git/Makefile
@@ -10,7 +10,6 @@ LICENSE=              gnu-gpl-v2
 
 GIT_REPOSITORIES=       master
 GIT_REPO.master=        git://github.com/EttusResearch/uhd.git
-GIT_MODULE.master=      uhd
 
 USE_LANGUAGES=         c c++
 USE_TOOLS=             cmake
diff --git a/virtualjaguar/Makefile b/virtualjaguar/Makefile
index 4d88ba6..9cff573 100644
--- a/virtualjaguar/Makefile
+++ b/virtualjaguar/Makefile
@@ -15,12 +15,10 @@ MAKE_JOBS_SAFE=             no
 
 USE_LANGUAGES=         c c++
 USE_TOOLS+=            gmake
-WRKSRC=                        ${WRKDIR}/virtualjaguar
 
 # Get it from Subversion repository:
 SVN_REPOSITORIES=              virtualjaguar
 SVN_ROOT.virtualjaguar=                
https://shamusworld.gotdns.org/svn/virtualjaguar/trunk/
-SVN_MODULE.virtualjaguar=      virtualjaguar
 SVN_CERTS=                     files/74ccc9063b5068b616abdcf0a1b04cec
 
 do-install:
diff --git a/wl-current/Makefile b/wl-current/Makefile
index 94469b5..01446f7 100644
--- a/wl-current/Makefile
+++ b/wl-current/Makefile
@@ -11,7 +11,6 @@ LICENSE=      gnu-gpl-v2
 MAINTAINER=    tech-pkg-ja%jp.NetBSD.org@localhost
 HOMEPAGE=      http://www.gohome.org/wl/
 COMMENT=       Mail/news management system with IMAP4rev1 support for Emacs
-WRKSRC=                ${WRKDIR}/wanderlust
 USE_TOOLS=     patch
 
 BUILD_TARGET=  all info
@@ -41,7 +40,6 @@ EMACS_BUILDLINK=      # empty
 
 GIT_REPOSITORIES=       master
 GIT_REPO.master=        git://github.com/wanderlust/wanderlust.git
-GIT_MODULE.master=      wanderlust
 _GIT_FLAGS?=            --depth 1
 
 
diff --git a/xf86-video-nv-current/Makefile b/xf86-video-nv-current/Makefile
index 13741cf..b20c78f 100644
--- a/xf86-video-nv-current/Makefile
+++ b/xf86-video-nv-current/Makefile
@@ -19,8 +19,6 @@ USE_LIBTOOL=  YES
 GNU_CONFIGURE= YES
 USE_TOOLS+=    pkg-config autoconf autoreconf automake
 
-WRKSRC=                ${WRKDIR}/xf86-video-nv
-
 .include "../../mk/bsd.prefs.mk"
 
 .if ${OPSYS} == "SunOS"
diff --git a/yaml-mode/Makefile b/yaml-mode/Makefile
index a5eee3d..b9446a3 100644
--- a/yaml-mode/Makefile
+++ b/yaml-mode/Makefile
@@ -11,12 +11,10 @@ LICENSE=    gnu-gpl-v2
 
 GIT_REPOSITORIES=      master
 GIT_REPO.master=       git://github.com/yoshiki/${PKGBASE}.git
-GIT_MODULE.master=     ${PKGBASE}
 
 INSTALLATION_DIRS+=    ${EMACS_LISPPREFIX}
 INSTALLATION_DIRS+=    share/doc/${PKGBASE}
 
-WRKSRC=                ${WRKDIR}/${PKGBASE}
 USE_LANGUAGES= # none
 NO_CONFIGURE=  YES
 
-- 
1.9.2



Home | Main Index | Thread Index | Old Index