authorgravatar for meghan@unicycle.coMeghan Denny <meghan@unicycle.co> 2021-07-19 06:48:13 -07:00
committergravatar for meghan@unicycle.coMeghan Denny <meghan@unicycle.co> 2021-07-19 06:48:13 -07:00
logf4c5b19a06d79a88305cc2fd95e47d0480e4a00a
tree1f942a8976c5ce15f554cbc37ed8f9c3325436db
parent0ae4fa944bf5ff834022fd1aaecfabf10f2f69f6

remove `generate.sh`


1 files changed, 0 insertions(+), 74 deletions(-)

generate.sh deleted-74
...@@ -1,74 +0,0 @@
1#!/usr/bin/env bash
2
3set -e
4
5data_url="https://raw.githubusercontent.com/spdx/license-list-data/master/json/licenses.json"
6out_path="src/lib.zig"
7file=$(curl -s $data_url)
8
9do_print() {
10 echo $@ >> $out_path
11}
12print_tab() {
13 printf " " >> $out_path
14}
15do_filter() {
16 echo $file | jq --raw-output --compact-output "$1"
17}
18sub_filter() {
19 echo "$1" | jq --raw-output --compact-output "$2"
20}
21
22echo "// SPDX License Data generated from https://github.com/spdx/license-list-data" > $out_path
23do_print "//"
24do_print "//" "Last generated from version" $(do_filter '.licenseListVersion')
25do_print "//"
26
27#
28#
29do_print
30do_print "pub const License = struct {"
31print_tab; do_print "isOsiApproved: bool,"
32print_tab; do_print "url: []const u8,"
33do_print "};"
34
35#
36#
37echo "spdx:"
38do_print
39do_print "pub const spdx = struct {"
40list=$(do_filter '.licenses | sort_by(.licenseId)[] | { licenseId, isOsiApproved, url:.seeAlso[0] }')
41for lic in $list
42do
43 lic_id=$(sub_filter $lic '.licenseId')
44
45 lic_obj=$(sub_filter $lic '{ isOsiApproved, url }')
46 lic_obj=${lic_obj//\":/ = }
47 lic_obj=${lic_obj//,\"/, .}
48 lic_obj=${lic_obj//\{\"/\{\.}
49 lic_obj=${lic_obj//null/false}
50
51 printf " " >> $out_path
52 do_print "pub const @\"$lic_id\" = License$lic_obj;"
53 printf "|"
54done
55do_print "};"
56echo
57
58#
59#
60echo "osi:"
61do_print
62do_print "pub const osi = &[_][]const u8{"
63for lic in $list
64do
65 lic_id=$(sub_filter $lic '.licenseId')
66 valid=$(sub_filter $lic '.isOsiApproved')
67 if [[ $valid == "true" ]]
68 then
69 print_tab; do_print "\"$lic_id\","
70 fi
71 printf "|"
72done
73do_print "};"
74echo