]> granicus.if.org Git - vim/commitdiff
patch 8.1.1942: shadow directory gets outdated when files are added v8.1.1942
authorBram Moolenaar <Bram@vim.org>
Fri, 30 Aug 2019 11:59:29 +0000 (13:59 +0200)
committerBram Moolenaar <Bram@vim.org>
Fri, 30 Aug 2019 11:59:29 +0000 (13:59 +0200)
Problem:    Shadow directory gets outdated when files are added.
Solution:   Add the "shadowupdate" target and add a few comments.

src/Makefile
src/version.c

index 0f724621a7e1bc52ead65e38c7e061df7b1fdf73..e1cb4859d7162b40c40102e89a52571a6d99e800 100644 (file)
@@ -2828,12 +2828,31 @@ clean celan: testclean
        fi
 
 # Make a shadow directory for compilation on another system or with different
-# features.
+# features:
+#  % make shadow
+#  % cd shadow
+#  edit configuration in src/shadow/Makefile
+#  % make
+#
+# Alternatively use a link for the Makefile and run configure with flags in
+# another way.  When new source files are added use "shadowupdate":
+#  % cd shadow
+#  % rm Makefile
+#  % ln -s ../Makefile .
+#  % ./configure {options}
+#  % make
+# And later:
+#  % git pull
+#  % make distclean shadowupdate
+#  % ./configure {options}
+#  % make
 SHADOWDIR = shadow
 
+LINKEDFILES = ../*.[chm] ../*.in ../*.sh ../*.xs ../*.xbm ../gui_gtk_res.xml ../toolcheck ../proto ../libvterm ../vimtutor ../gvimtutor ../install-sh ../Make_all.mak
+
 shadow:        runtime pixmaps
        $(MKDIR_P) $(SHADOWDIR)
-       cd $(SHADOWDIR); ln -s ../*.[chm] ../*.in ../*.sh ../*.xs ../*.xbm ../gui_gtk_res.xml ../toolcheck ../proto ../libvterm ../vimtutor ../gvimtutor ../install-sh ../Make_all.mak .
+       cd $(SHADOWDIR); ln -s $(LINKEDFILES) .
        mkdir $(SHADOWDIR)/auto
        cd $(SHADOWDIR)/auto; ln -s ../../auto/configure .
        $(MKDIR_P) $(SHADOWDIR)/po
@@ -2867,6 +2886,12 @@ shadow:  runtime pixmaps
                                 ../../testdir/test83-tags? \
                                 ../../testdir/*.ok .
 
+# After updating Vim new files may have been created, use this to refresh the
+# symbolic links in the shadow directory. This isn't guaranteed to catch all
+# changes, running "make shadow" again might sometimes be needed.
+shadowupdate:
+       ln -sf $(LINKEDFILES) .
+
 # Link needed for doing "make install" in a shadow directory.
 runtime:
        -ln -s ../runtime .
index e6f7d141b4a90731ccd6823534ed0e92aea5bd4b..64735b2ed1635613d698004a2090e3cb7a1f6cce 100644 (file)
@@ -761,6 +761,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1942,
 /**/
     1941,
 /**/