summaryrefslogtreecommitdiff
path: root/src/splitcmd
blob: 9f7e8a38639895b7c5117a9e3a66cec6d0961219 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/bash

set -e

range="37 43 53 93,102 127,138 162,169 173,238 269,306 310,312 316,320 341,360 364,366 408,415 1559,2078 2095,2247 2282,2289 2513,2758 4016,4040 4070,4104 4119,4187"

git archive --format tar master | \
  tar -Ox src/sort.c | \
  sed "$(
    echo "4436,4483{"
      echo "4436{"
        echo "i\ \ \ \ \ \ \ \ \ \ add_key();"
      echo "}"
      echo "s|^ \{8\}||"
      echo "4436s|^\(.*\)\$|static void add_key(void)\n{\n  struct keyfield *key;\n  struct keyfield key_buf;  char const *s;\n\1|"
      echo "4483s|^\(.*\)\$|\1\n}|"
      echo "wsrc/sort-uniq-keyfuncs.c"
      echo "d"
    echo "}"
    echo '57i'
    echo '57i#include "sort-uniq-keyfuncs.c"'
    for r in ${range}
    do
      echo "${r}{wsrc/sort-uniq-keyfuncs.c"
        echo "d"
      echo "}"
    done
  )" > \
  src/sort.c

# cat src/sort-uniq-keyfuncs.foot.c >> src/sort-uniq-keyfuncs.c