Difference between
modified post c9e1a by Anonymous on Fri 19th Jul 2024 00:31
original post 16b43bb by Anonymous on Fri 19th Jul 2024 00:01
Download diff
Show
old version |
new version |
both versions
| 1 | 1 | #!/bin/ksh93 | |
| 2 | 2 | ||
| 3 | 3 | # | |
| 4 | 4 | # make_numtree1.ksh93 - build makefile to generate number sequence | |
| 5 | 5 | # The resulting Makefile is intended to be used with $ make -j128 all # | |
| 6 | 6 | # as filesystem test | |
| 7 | 7 | # | |
| 8 | 8 | # Written by Roland Mainz <roland.mainz@nrubsig.org> | |
| 9 | 9 | # | |
| 10 | 10 | ||
| 11 | 11 | function make_number_seq | |
| 12 | 12 | { | |
| 13 | 13 | # set -o nounset | |
| 14 | 14 | ||
| 15 | 15 | nameref out_maketarget=$1 | |
| 16 | 16 | integer start_i=$2 | |
| 17 | 17 | integer stop_i=$3 | |
| 18 | 18 | integer i | |
| 19 | 19 | typeset -a make_targets | |
| 20 | 20 | ||
| 21 | - | if (( (stop_i - start_i) > 100 ; then | |
| 21 | + | if (( (stop_i - start_i) > 10 )) ; then | |
| 22 | 22 | (( i=(stop_i - start_i)/2 )) | |
| 23 | 23 | make_number_seq make_targets[0] $start_i $(( start_i+i )) | |
| 24 | - | make_number_seq make_targets[1] $(( start_i+i+1 )) $stop_i | |
| 24 | + | make_number_seq make_targets[1] $(( start_i+i )) $stop_i | |
| 25 | 25 | else | |
| 26 | 26 | for ((i=start_i ; i < stop_i ; i++ )) ; do | |
| 27 | 27 | printf 'i_%d:\n' i | |
| 28 | - | printf '\tprintf "%d\\n" >"i_%d"\n' i i | |
| 28 | + | printf '\t@printf "%d\\n" >"i_%d"\n' i i | |
| 29 | 29 | make_targets+=( "i_$i" ) | |
| 30 | 30 | done | |
| 31 | 31 | fi | |
| 32 | 32 | ||
| 33 | 33 | out_maketarget="i_${start_i}_${stop_i}" | |
| 34 | 34 | printf 'i_%d_%d: %s\n' start_i stop_i "${make_targets[*]}" | |
| 35 | 35 | ||
| 36 | 36 | printf '\tcat ' | |
| 37 | 37 | printf '%q ' "${make_targets[@]}" | |
| 38 | 38 | printf ' >"%s"\n' "$out_maketarget" | |
| 39 | 39 | ||
| 40 | 40 | return 0 | |
| 41 | 41 | } | |
| 42 | 42 | ||
| 43 | 43 | typeset make_target | |
| 44 | 44 | ||
| 45 | - | make_number_seq make_target 0 100 | |
| 45 | + | make_number_seq make_target 0 1000 | |
| 46 | 46 | ||
| 47 | 47 | printf 'all: %s\n' "$make_target" | |
| 48 | 48 | # EOF. | |
| 49 | 49 |
Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.
nrubsig.kpaste.net RSS