| #!/bin/sh |
| |
| VERSION="5.16" |
| OUT="$1" |
| |
| # get the absolute path for the OUT file |
| OUT_NAME=$(basename ${OUT}) |
| OUT_DIR=$(cd $(dirname ${OUT}); pwd) |
| OUT="${OUT_DIR}/${OUT_NAME}" |
| |
| # the version check should be under the source directory |
| # where this script is located, instead of the currect directory |
| # where this script is excuted. |
| SRC_DIR=$(dirname $0) |
| SRC_DIR=$(cd ${SRC_DIR}; pwd) |
| cd "${SRC_DIR}" |
| |
| v="" |
| if [ -d .git ] && head=`git rev-parse --verify HEAD 2>/dev/null`; then |
| git update-index --refresh --unmerged > /dev/null |
| descr=$(git describe --match=v* 2>/dev/null) |
| if [ $? -eq 0 ]; then |
| # on git builds check that the version number above |
| # is correct... |
| if [ "${descr%%-*}" = "v$VERSION" ]; then |
| v="${descr#v}" |
| if git diff-index --name-only HEAD | read dummy ; then |
| v="$v"-dirty |
| fi |
| fi |
| fi |
| fi |
| |
| # set to the default version when failed to get the version |
| # information with git |
| if [ -z "${v}" ]; then |
| v="$VERSION" |
| fi |
| |
| echo '#include "iw.h"' > "$OUT" |
| echo "const char iw_version[] = \"$v\";" >> "$OUT" |