diff --git a/README.md b/README.md index e88e271..6fdd86a 100644 --- a/README.md +++ b/README.md @@ -200,3 +200,4 @@ When contributing: 2. For major features, consider manually creating minor version tags 3. Generated version files (`src/version.*`, `VERSION`) should not be committed # Test change +# Testing -m flag diff --git a/build.sh b/build.sh index fd17cc1..d8c4d68 100755 --- a/build.sh +++ b/build.sh @@ -13,6 +13,23 @@ print_success() { echo -e "${GREEN}[SUCCESS]${NC} $1"; } print_warning() { echo -e "${YELLOW}[WARNING]${NC} $1"; } print_error() { echo -e "${RED}[ERROR]${NC} $1"; } +# Global variable for commit message +COMMIT_MESSAGE="" + +# Parse command line arguments for -m flag +while [[ $# -gt 0 ]]; do + case $1 in + -m|--message) + COMMIT_MESSAGE="$2" + shift 2 + ;; + *) + # Keep other arguments for main logic + break + ;; + esac +done + # Function to automatically increment version increment_version() { print_status "Incrementing version..." @@ -57,16 +74,18 @@ increment_version() { print_warning "Failed to stage changes (maybe not a git repository)" fi - # Prompt for commit message - echo "" - print_status "Please enter a meaningful commit message for version $NEW_VERSION:" - echo -n "> " - read -r COMMIT_MESSAGE + # Handle commit message - use global variable if set, otherwise prompt + if [[ -z "$COMMIT_MESSAGE" ]]; then + echo "" + print_status "Please enter a meaningful commit message for version $NEW_VERSION:" + echo -n "> " + read -r COMMIT_MESSAGE + fi # Check if user provided a message if [[ -z "$COMMIT_MESSAGE" ]]; then print_warning "No commit message provided. Using default message." - COMMIT_MESSAGE="Version $NEW_VERSION - Automatic version increment" + COMMIT_MESSAGE="Automatic version increment" fi # Commit changes with user-provided message @@ -239,7 +258,10 @@ case "${1:-build}" in ;; *) echo "OTP Cipher Build Script" - echo "Usage: $0 {build|static|clean|install|uninstall|version}" + echo "Usage: $0 [-m \"commit message\"] {build|static|clean|install|uninstall|version}" + echo "" + echo "Options:" + echo " -m, --message \"text\" - Specify commit message (skips interactive prompt)" echo "" echo "Commands:" echo " build - Build project with automatic version increment (default)" @@ -248,6 +270,11 @@ case "${1:-build}" in echo " install - Install to system (requires build first)" echo " uninstall - Remove from system" echo " version - Generate version files only" + echo "" + echo "Examples:" + echo " $0 build" + echo " $0 -m \"Fixed checksum parsing bug\" build" + echo " $0 --message \"Added new feature\" static" exit 1 ;; esac