/ darling / script / HeimdalFrameworks / hx509-yacc.sh
hx509-yacc.sh
 1  #!/bin/sh
 2  # export SRCROOT="$(cd ../../.. && pwd)"
 3  # export GENERATED_DIR="$SRCROOT/gen"
 4  DERIVED_FILES_DIR="$GENERATED_DIR/hx509-yacc"
 5  DERIVED_SOURCES_DIR="$DERIVED_FILES_DIR"
 6  export HEIMDAL_TMPDIR="$DERIVED_FILES_DIR/hx509-yacc"
 7  
 8  INPUT_FILE_BASE=sel-gram
 9  INPUT_FILE_DIR=${SRCROOT}/lib/hx509
10  INPUT_FILE_PATH=${INPUT_FILE_DIR}/${INPUT_FILE_BASE}.y
11  
12  mkdir -p ${DERIVED_FILES_DIR}
13  
14  cfile="${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}-${CURRENT_ARCH}.c-new"
15  
16  ${SRCROOT}/ylwrap ${INPUT_FILE_PATH} y.tab.c "${cfile}" y.tab.h ${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}.h y.output  -- yacc -d || exit 1
17  
18  mkdir -p "${HEIMDAL_TMPDIR}/hx509"
19  sh ${SRCROOT}/packages/mac/update-header.sh build ${INPUT_FILE_BASE}.h "${DERIVED_SOURCES_DIR}" "${HEIMDAL_TMPDIR}/hx509" || exit 1
20  
21  
22  if test -f "${cfile}"  && cmp -s "${cfile}" "${HEIMDAL_TMPDIR}/hx509/${INPUT_FILE_BASE}.c"  ; then
23  	echo "${INPUT_FILE_PATH} not changed"
24  	rm "${cfile}"
25  else
26  	echo "${INPUT_FILE_PATH} modified"
27  	test -f "${HEIMDAL_TMPDIR}/hx509/${INPUT_FILE_BASE}.c" && diff -uw "${cfile}" "${HEIMDAL_TMPDIR}/hx509/${INPUT_FILE_BASE}.c" 
28  	mv "${cfile}" "${HEIMDAL_TMPDIR}/hx509/${INPUT_FILE_BASE}.c"
29  fi