parset: support for associative arrays in bash, ksh, zsh.
[parallel.git] / Makefile.am
blob745a1fcbee3293bf378533891d5ffd03f5f15aa4
1 # SPDX-FileCopyrightText: 2002-2021 Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc.
3 # SPDX-License-Identifier: GPL-3.0-or-later
5 SUBDIRS = src
7 test:
8         cd testsuite; make 1
10 upload:
11         eval `gpg-agent --daemon`
12 # make sure $YYYYMMDD is set
13         echo $(YYYYMMDD) | grep 20
14         cp parallel-$(YYYYMMDD).tar.bz2 parallel-latest.tar.bz2
15         cp doc/parallel.directive parallel-$(YYYYMMDD).tar.bz2.directive
16         perl -i -pe "s/20\d\d\d\d\d\d/$(YYYYMMDD)/" parallel-*.tar.*directive
17         gpg --clearsign --yes parallel-$(YYYYMMDD).tar.bz2.directive
19         cp doc/parallel.latest.directive parallel-latest.tar.bz2.directive
20         perl -i -pe "s/20\d\d\d\d\d\d/$(YYYYMMDD)/" parallel-latest.tar.*directive
21         gpg --clearsign --yes parallel-latest.tar.bz2.directive
23         (echo '#!/bin/bash'; \
24          echo; \
25          echo "# To check the signature run:"; \
26          echo "#   echo | gpg"; \
27          echo "#   gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-$(YYYYMMDD).tar.bz2.sig"; \
28          echo; \
29          echo "echo | gpg 2>/dev/null"; \
30          echo 'gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve $$0'; \
31          echo 'exit $$?' ; \
32          echo; \
33          gpg -ab -o - parallel-$(YYYYMMDD).tar.bz2; \
34         ) > parallel-$(YYYYMMDD).tar.bz2.sig
36         (echo '#!/bin/bash'; \
37          echo; \
38          echo "# To check the signature run:"; \
39          echo "#   echo | gpg"; \
40          echo "#   gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-latest.tar.bz2.sig"; \
41          echo; \
42          echo "echo | gpg 2>/dev/null"; \
43          echo 'gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve $$0'; \
44          echo 'exit $$?' ; \
45          echo; \
46          gpg -ab -o - parallel-$(YYYYMMDD).tar.bz2; \
47         ) > parallel-latest.tar.bz2.sig
49         gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-latest.tar.bz2.sig
50         gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-$(YYYYMMDD).tar.bz2.sig
52         ../ftpsync/src/ftpsync parallel-$(YYYYMMDD).tar.bz2{,.sig,*asc} ftp://ftp-upload.gnu.org/incoming/ftp/
53         ../ftpsync/src/ftpsync parallel-latest.tar.bz2{,.sig,*asc} ftp://ftp-upload.gnu.org/incoming/ftp/
55 # This can take 7 minutes
56         pushd /tmp; \
57         rm -rf /tmp/parallel-$(YYYYMMDD)*; \
58         while ! wget https://ftp.gnu.org/gnu/parallel/parallel-$(YYYYMMDD).tar.bz2 ; do sleep 2; done; \
59         tar xjvf parallel-$(YYYYMMDD).tar.bz2; \
60         cd parallel-$(YYYYMMDD); \
61         ./configure; \
62         make -j && sudo make -j install; \
63         pushd; \
64         sudo cp /usr/local/bin/parallel /usr/local/bin/parallel-$(YYYYMMDD)
66 alphaupload:
67 # Copy of upload
68         eval `gpg-agent --daemon`
69 # make sure $YYYYMMDD is set
70         echo $(YYYYMMDD) | grep 20
71         cp parallel-$(YYYYMMDD).tar.bz2 parallel-latest.tar.bz2
72         cp doc/parallel.directive parallel-$(YYYYMMDD).tar.bz2.directive
73         perl -i -pe "s/20\d\d\d\d\d\d/$(YYYYMMDD)/" parallel-*.tar.*directive
74         gpg --clearsign --yes parallel-$(YYYYMMDD).tar.bz2.directive
76         cp doc/parallel.latest.directive parallel-latest.tar.bz2.directive
77         perl -i -pe "s/20\d\d\d\d\d\d/$(YYYYMMDD)/" parallel-latest.tar.*directive
78         gpg --clearsign --yes parallel-latest.tar.bz2.directive
80         (echo '#!/bin/bash'; \
81          echo; \
82          echo "# To check the signature run:"; \
83          echo "#  echo | gpg"; \
84          echo "#  gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-$(YYYYMMDD).tar.bz2.sig"; \
85          echo; \
86          echo "echo | gpg 2>/dev/null"; \
87          echo 'gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve $$0'; \
88          echo 'exit $$?' ; \
89          echo; \
90          gpg -ab -o - parallel-$(YYYYMMDD).tar.bz2; \
91         ) > parallel-$(YYYYMMDD).tar.bz2.sig
93         (echo '#!/bin/bash'; \
94          echo; \
95          echo "# To check the signature run:"; \
96          echo "#  echo | gpg"; \
97          echo "#  gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-latest.tar.bz2.sig"; \
98          echo; \
99          echo "echo | gpg 2>/dev/null"; \
100          echo 'gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve $$0'; \
101          echo 'exit $$?' ; \
102          echo; \
103          gpg -ab -o - parallel-$(YYYYMMDD).tar.bz2; \
104         ) > parallel-latest.tar.bz2.sig
106         gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-latest.tar.bz2.sig
107         gpg --auto-key-locate keyserver --keyserver-options auto-key-retrieve parallel-$(YYYYMMDD).tar.bz2.sig
109         ../ftpsync/src/ftpsync parallel-$(YYYYMMDD).tar.bz2{,.sig,*asc} ftp://ftp-upload.gnu.org/incoming/alpha/
111 # This can take 7 minutes
112         pushd /tmp; \
113         rm -rf /tmp/parallel-$(YYYYMMDD)*; \
114         while ! wget http://alpha.gnu.org/gnu/parallel/parallel-$(YYYYMMDD).tar.bz2 ; do sleep 2; done; \
115         tar xjvf parallel-$(YYYYMMDD).tar.bz2; \
116         cd parallel-$(YYYYMMDD); \
117         ./configure; \
118         make -j && sudo make -j install; \
119         pushd; \
120         sudo cp /usr/local/bin/parallel /usr/local/bin/parallel-$(YYYYMMDD)
122 monitorman:
123 # If man page changed: open new pdfman
124         inotifywait -qmre MOVED_TO -e CLOSE_WRITE --format %w%f . | parallel -uj1 'echo {=/\.pod$$/ or skip()=};make -j && sudo make install; pdfman {/.} &'
126 reuse:
127         rm -rf /tmp/reuse
128         mkdir /tmp/reuse
129         git commit -a -m dummy
130         (wd=`pwd`; \
131         cd /tmp/reuse; \
132         git clone "$$wd"; \
133         cd parallel; \
134         reuse lint || \
135         (echo Use; \
136         echo '  reuse addheader --copyright="Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc." --license="GPL-3.0-or-later" source-files'; \
137         echo or; \
138         echo '  reuse addheader --copyright="Ole Tange, http://ole.tange.dk and Free Software and Foundation, Inc." --license="GPL-3.0-or-later" --explicit-license bin-files' \
139         ) )
140         git reset HEAD~ >/dev/null
141         git commit -c ORIG_HEAD >/dev/null
143 testurls:
144         mkdir -p urls
145         cd urls && grep -v '(dead)' ../src/* | grep -h -Po 'https?://[^ $$<>")}]+' | perl -pe 's/(&gt|\{).*//;s/\\-/-/g;s/\\n//g;s/&amp;/&/g;s/&#.*//;'"s/'.*//" | grep -Ev 'parallel-(20)?$$|coolwebsite.biz' | sort -u | egrep -v 'example.com|##|\*\(' | parallel -j0 --timeout 33 --bar --tag --joblog joblog --retries 3 neno wget -m -l1 -Q1 '{=$$_=Q($$_)=}'
147 reconf:
148         rm -fr autom4te.cache aclocal.m4 config.h config.h.in config.log Makefile.in missing install-sh
149         rm -rf src/Makefile.in
150         autoreconf --install -W gnu
151         ./configure
152         make -j
153         sudo make install
155 pack_unpack_and_test_build:
156         echo '### Building tar.bz2'
157         ./configure
158         make dist
159         make dist-bzip2
160         echo "### Unpack parallel-$(YYYYMMDD).tar.bz2"
161         cp parallel-$(YYYYMMDD).tar.bz2 /tmp
162         cd /tmp && \
163         tar xjf parallel-$(YYYYMMDD).tar.bz2 && \
164         cd parallel-$(YYYYMMDD) && \
165         ./configure && make -j && sudo make -j install
168 EXTRA_DIST = CITATION CREDITS LICENSES/CC-BY-SA-4.0.txt LICENSES/GFDL-1.3-or-later.txt LICENSES/GPL-3.0-or-later.txt