libisoburn/releng/auto_cxx

89 lines
2.0 KiB
Plaintext
Raw Normal View History

2011-07-05 09:18:31 +00:00
#!/bin/bash
2011-07-11 09:40:23 +00:00
# Copyright 2011 George Danchev <danchev@spnet.net>
2011-07-15 06:05:57 +00:00
# Licensed under GNU GPL version 2 or later
2011-07-11 09:40:23 +00:00
2011-07-05 09:18:31 +00:00
set -e
2011-07-13 11:24:32 +00:00
not_in_releng_exit() {
printf "\nPlease execute the tests from releng directory.\n\n"
exit 1
}
. inc/releng_getopts.inc || not_in_releng_exit
2011-07-05 09:18:31 +00:00
print_specific_help() {
cat << HLP
Specific options:
none yet.
Overview:
Tests both xorriso/xorriso.h and libisoburn/libisoburn.h
APIs for C++ cleanness.
HLP
}
2011-07-18 17:22:59 +00:00
if test "$SPECIFIC_HELP" = 1; then
print_specific_help
2011-07-18 17:22:59 +00:00
exit 0
fi
2011-07-05 09:18:31 +00:00
2011-07-18 17:22:59 +00:00
# xorriso binary is not needed for that particular test
2011-07-08 12:16:44 +00:00
SAMPLE_CODE_DIR=codesamples
CC=g++
2011-07-05 09:18:31 +00:00
# check compiler
if ! which "${CC}" >/dev/null 2>&1; then
printf "\n${SELF}: Not found: ${CC}. Install ${CC}.\n"
cleanup
exit 5
fi
2011-07-05 09:18:31 +00:00
# check data dir
if [ -d "${GEN_DATA_DIR}" ]; then
printf "\n${SELF}: directory %s exists!" ${GEN_DATA_DIR}
2011-07-15 18:07:02 +00:00
printf "\n${SELF}: use '${SELF} -c' to remove.\n"
exit 6
2011-07-05 09:18:31 +00:00
else
mkdir "${GEN_DATA_DIR}"
fi
INCLUDE_DIRS="-I../ -I../../libburn -I../../libisofs -I/usr/local/include -I/usr/pkg/include"
2011-07-05 09:18:31 +00:00
# process sample code tests
for SMPL in `ls "${SAMPLE_CODE_DIR}"/*.cpp`; do
# CMD_CPL="${CC} -I../ -L ../libisoburn/.libs/ ${CFLAGS} -lisoburn -o ${SMPL}.obj ${SMPL}"
CMD_CPL="${CC} -c ${INCLUDE_DIRS} ${CFLAGS} -o ${SMPL}.obj ${SMPL}"
printf "${SELF}: ${CMD_CPL}"
set +e
2011-07-05 09:18:31 +00:00
${CMD_CPL}
RET_CPL="$?"
if [ ${RET_CPL} = 0 -a -f ${SMPL}.obj ]; then
mv ${SMPL}.obj ${GEN_DATA_DIR}
printf "...ok\n"
else
printf "\nFAIL : ${SELF}: Compilation of ${SMPL}\n"
cleanup
exit 7
fi
# BASE=$(basename ${SMPL}.obj)
# printf "${SELF}: Running LD_LIBRARY_PATH=../libisoburn/.libs/:${LD_LIBRARY_PATH} ${GEN_DATA_DIR}/${BASE}"
# LD_LIBRARY_PATH=../libisoburn/.libs/:${LD_LIBRARY_PATH} ${GEN_DATA_DIR}/${BASE}
# RET_SMPL="$?"
# case ${RET_SMPL} in
# 0)
# printf "...ok\n"
# ;;
# *)
# printf "exit code: ${RET_SMPL}\n"
# cleanup
# exit 8
# ;;
# esac
set -e
2011-07-05 09:18:31 +00:00
done
# clean
cleanup
exit 0