Whamcloud - gitweb
make debs refinement
authorBrian J. Murrell <brian.murrell@oracle.com>
Mon, 18 Oct 2010 18:10:48 +0000 (14:10 -0400)
committerVitaly Fertman <vitaly.fertman@sun.com>
Mon, 18 Oct 2010 22:17:53 +0000 (02:17 +0400)
When looking for the most recent tag, look for only tags matching v*.
That should hopefully weed out any non-versioning tags.

Don't convert debian/changelog commits to patches since the changelog
has to be in place right when dpkg-buildpackage starts.
This does mean that one should NEVER commit to another file in the same
commit as a debian/changelog commit.

Make sure debian/patche{s,d} are clean before starting.

build/autoMakefile.am.toplevel

index eb9b048..986e6fc 100644 (file)
@@ -148,7 +148,7 @@ debs:
                echo -e "1i\nlustre ($$lversion-1) unstable; urgency=low\n\n  * Automated changelog entry update\n\n -- Brian J. Murrell <brian@interlinx.bc.ca>  $$(date -R)\n\n.\nwq" | ed debian/changelog; \
        fi; \
        if [ -d .git ]; then \
                echo -e "1i\nlustre ($$lversion-1) unstable; urgency=low\n\n  * Automated changelog entry update\n\n -- Brian J. Murrell <brian@interlinx.bc.ca>  $$(date -R)\n\n.\nwq" | ed debian/changelog; \
        fi; \
        if [ -d .git ]; then \
-               ver=$$(git describe --tags); \
+               ver=$$(git describe --match v\* --tags); \
                if [[ $$ver = *-*-* ]]; then \
                        hash=$${ver##*-}; \
                        ffw=$${ver#*-}; \
                if [[ $$ver = *-*-* ]]; then \
                        hash=$${ver##*-}; \
                        ffw=$${ver#*-}; \
@@ -164,25 +164,29 @@ debs:
                                      -e 's/_/./g'); \
                        fi; \
                        pdir="debian/patches"; \
                                      -e 's/_/./g'); \
                        fi; \
                        pdir="debian/patches"; \
-                       git format-patch -o $$pdir $$tag..HEAD^; \
-                       if [ ! -d $$pdir ]; then \
-                               mkdir $$pdir; \
+                       if [ -d $$pdir ]; then \
+                               rm -rf $$pdir; \
                        fi; \
                        fi; \
+                       mkdir $$pdir; \
+                       git format-patch -o $$pdir $$tag..HEAD; \
                        pushd $$pdir; \
                        pushd $$pdir; \
-                       if [ -d ../patched ]; then \
-                               mkdir ../patched; \
+                       if [ -d ../patched ]; then \
+                               rm -rf ../patched; \
                        fi; \
                        fi; \
+                       mkdir ../patched; \
                        rm -f 00list *.dpatch; \
                        for file in [0-9][0-9][0-9][0-9]-*.patch; do \
                        rm -f 00list *.dpatch; \
                        for file in [0-9][0-9][0-9][0-9]-*.patch; do \
-                               desc=$$(cat $$file | sed -e '1,/^$$/d' \
-                                                        -e '/^---$$/,$$d'); \
-                               dpatch_file=$${file/.patch/.dpatch}; \
-                               sed -e '1,/^---$$/d' $$file | \
-                                 dpatch patch-template -p "$${file%.patch}" \
-                                   "$$desc" > $$dpatch_file; \
-                               echo "faked by make debs run from git" > \
-                                 ../patched/$$dpatch_file; \
-                               echo $$dpatch_file >> 00list; \
+                               if ! grep -q "^ debian/changelog" $$file; then \
+                                       desc=$$(cat $$file | sed -e '1,/^$$/d' \
+                                                                -e '/^---$$/,$$d'); \
+                                       dpatch_file=$${file/.patch/.dpatch}; \
+                                       sed -e '1,/^---$$/d' $$file | \
+                                         dpatch patch-template -p "$${file%.patch}" \
+                                         "$$desc" > $$dpatch_file; \
+                                       echo "faked by make debs run from git" > \
+                                         ../patched/$$dpatch_file; \
+                                       echo $$dpatch_file >> 00list; \
+                               fi; \
                                rm -f $$file; \
                        done; \
                fi; \
                                rm -f $$file; \
                        done; \
                fi; \