4444cd " $1 " || exit 1
4545
4646sparrow_godel_script=" $HOME /sparrow-cli/sparrow-cli/godel-script/usr/bin/godel"
47- sparrow_lib_1_0 =" $HOME /sparrow-cli/sparrow-cli/lib-1.0 "
47+ sparrow_lib =" $HOME /sparrow-cli/sparrow-cli/lib"
4848
4949# Define get_files function
5050get_files () {
5151 find " $1 " -type f \( -name " *$2 " \) -print
5252}
5353
54- # Define rebuild_lib function
55- rebuild_lib () {
56- local lib_path=" $1 "
57- local lib=" $2 "
58- local gdl_list=()
59- local output_file
60- local tmp_out
61- local start_time
62- local end_time
63- local elapsed_time
64-
65- gdl_list+=($( get_files " $lib_path " " .gs" ) )
66- gdl_list+=($( get_files " $lib_path " " .gdl" ) )
67-
68- output_file=$( mktemp " tempfile.XXXXXX.gdl" )
69- trap ' rm -f "$output_file"' EXIT
70-
71- echo " // script" > " $output_file "
72- for file_name in " ${gdl_list[@]} " ; do
73- cat " $file_name " >> " $output_file "
74- done
75-
76- tmp_out=$( mktemp " tempfile.XXXXXX.gdl" )
77- trap ' rm -f "$tmp_out"' EXIT
78-
79- start_time=$( date +%s%3N)
80- if ! " $sparrow_godel_script " " $output_file " -o " $tmp_out " ; then
81- echo " $lib_path lib compile error, please check it yourself" >&2
82- exit 1
83- fi
84-
85- mv " $tmp_out " " $sparrow_lib_1_0 /coref.$lib .gdl"
86-
87- end_time=$( date +%s%3N)
88- elapsed_time=$(( end_time - start_time))
89- echo " $lib_path lib compile success time: ${elapsed_time} milliseconds" >&2
90- }
91-
92- # Define get_language function
93- get_language () {
94- local dir=" $1 "
95- local dirname
96- local language
97-
98- dirname=$( dirname " $dir " )
99- language=$( basename " $dirname " )
100- echo " $language "
101- }
102-
103- # Get libs directories
104- directories=($( find " $PWD " -type d \( -path " $PWD /language/*/lib" -o -path " $PWD /language/*/libs" \) -print) )
105-
106- # Get libs
107- for dir in " ${directories[@]} " ; do
108- lang=$( get_language " $dir " )
109- echo " Building lib for $lang ..."
110- rebuild_lib " $dir " " $lang "
111- done
112-
11354# Define get_target_files function
11455get_target_files () {
11556 find " $1 " -type f \( -name " *.gs" -o -name " *.gdl" \) -not -name " tempfile.*.gdl" -not -path " $1 /language/*/lib/*"
@@ -119,20 +60,21 @@ files=$(get_target_files "$PWD")
11960
12061# Iterate over the files
12162for file in $files ; do
122- output=$(( "$sparrow_godel_script " "$file " - p "$sparrow_lib_1_0 " - o "${file% .* } _tmp.gdl") 2 >& 1 )
63+ output=$(( "$sparrow_godel_script " "$file " - p "$sparrow_lib " -- semantic- only) 2 >& 1 )
64+ result=$?
12365
124- # Check if the output is not empty
12566 if [ -n "$output " ]; then
126- echo "The file $file produced the following output:"
67+ echo "File $file produced the following output:"
12768 echo "$output "
128- echo "Please check if this file is a godel script (.gs) or a godel 1 .0 script (.gdl)"
69+ fi
70+
71+ # Check if the output is not empty
72+ if [ $result -ne 0 ]; then
73+ echo "Build failed, please check this file"
12974 exit 1
13075 else
13176 echo "$file build successful"
13277 fi
133-
134- # Remove temporary file
135- rm -f "${file% .* } _tmp.gdl"
13678done
13779
13880exit 0
0 commit comments