mirror of https://github.com/sipwise/kamailio.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.7 KiB
50 lines
1.7 KiB
#!/usr/bin/env sh
|
|
|
|
# This script is executed by CMake after db_text schema files are generated.
|
|
# It appends the last line of each generated file (except 'version')
|
|
# to the 'version' file and truncates each generated file to the n line.
|
|
|
|
# Get the number of lines to move to version file from the first argument
|
|
# Get the nubmer of lines to keep in the file from the second argument
|
|
|
|
TAIL_NUMBER="$1"
|
|
HEAD_NUMBER="$2"
|
|
|
|
# echo " Tail number: $TAIL_NUMBER"
|
|
# echo " Head number: $HEAD_NUMBER"
|
|
|
|
# Loop through files, sorted alphabetically
|
|
for FILE in $(ls * | sort); do
|
|
# Check if it's a regular file and not the version file
|
|
if [ -f "$FILE" ] && [ "$FILE" != "version" ]; then
|
|
# echo " Processing: $FILE"
|
|
|
|
# Check if file has at least 1 line before tail
|
|
if [ -s "$FILE" ]; then # -s checks if file is not empty
|
|
# Append the last line to the version file
|
|
# Using "printf" to ensure a newline is added after the tail output
|
|
tail -n "$TAIL_NUMBER" "$FILE" >> version
|
|
if [ $? -ne 0 ]; then # Check tail command result
|
|
echo "Warning: tail command failed for $FILE"
|
|
fi
|
|
|
|
# Get the first line and overwrite the original file
|
|
head -n "$HEAD_NUMBER" "$FILE" > "$$FILE".tmp
|
|
if [ $? -ne 0 ]; then
|
|
echo "Warning: head command failed for $FILE"
|
|
else
|
|
mv "$$FILE".tmp "$FILE"
|
|
if [ $? -ne 0 ]; then
|
|
echo "Warning: mv command failed for $FILE"
|
|
fi
|
|
fi
|
|
else
|
|
echo "Warning: File $FILE is empty, skipping processing."
|
|
fi
|
|
fi
|
|
done
|
|
|
|
echo "Finished processing schema files in $PWD"
|
|
|
|
exit 0 # Indicate success
|