src/Tools/jEdit/lib/Tools/jedit
changeset 43384 9c228b8953f2
parent 43381 806878ae2219
child 43391 986860aa51ac
equal deleted inserted replaced
43383:63fc6b5ef8ac 43384:9c228b8953f2
   164 
   164 
   165 # target
   165 # target
   166 
   166 
   167 TARGET="dist/jars/Isabelle-jEdit.jar"
   167 TARGET="dist/jars/Isabelle-jEdit.jar"
   168 
   168 
       
   169 declare -a UPDATED=()
       
   170 
   169 if [ "$BUILD_JARS" = jars_fresh ]; then
   171 if [ "$BUILD_JARS" = jars_fresh ]; then
   170   OUTDATED=true
   172   OUTDATED=true
   171 else
   173 else
   172   OUTDATED=false
   174   OUTDATED=false
   173   if [ ! -e "$TARGET" ]; then
   175   if [ ! -e "$TARGET" ]; then
   174     OUTDATED=true
   176     OUTDATED=true
   175   elif [ -n "$ISABELLE_JEDIT_BUILD_HOME" ]; then
   177   else
   176     for SOURCE in "${SOURCES[@]}" "${RESOURCES[@]}" "$JEDIT_JAR" "${JEDIT_JARS[@]}"
   178     if [ -n "$ISABELLE_JEDIT_BUILD_HOME" ]; then
       
   179       declare -a DEPS=("${SOURCES[@]}" "${RESOURCES[@]}" "$JEDIT_JAR" "${JEDIT_JARS[@]}")
       
   180     else
       
   181       declare -a DEPS=("${SOURCES[@]}" "${RESOURCES[@]}")
       
   182     fi
       
   183     for DEP in "${DEPS[@]}"
   177     do
   184     do
   178       [ ! -e "$SOURCE" ] && fail "Missing file: $SOURCE"
   185       [ ! -e "$DEP" ] && fail "Missing file: $DEP"
   179       [ "$SOURCE" -nt "$TARGET" ] && OUTDATED=true
   186       [ "$DEP" -nt "$TARGET" ] && {
       
   187         OUTDATED=true
       
   188         UPDATED["${#UPDATED[@]}"]="$DEP"
       
   189       }
   180     done
   190     done
   181   fi
   191   fi
   182 fi
   192 fi
   183 
   193 
   184 
   194 
   185 # build
   195 # build
   186 
   196 
   187 if [ "$OUTDATED" = true ]
   197 if [ "$OUTDATED" = true ]
   188 then
   198 then
       
   199   [ "${#UPDATED[@]}" -gt 0 ] && {
       
   200     echo "Rebuild due to updated file dependencies:"
       
   201     for FILE in "${UPDATED[@]}"
       
   202     do
       
   203       echo "  $FILE"
       
   204     done
       
   205   }
       
   206 
   189   [ -z "$SCALA_HOME" ] && fail "Unknown SCALA_HOME -- Scala unavailable"
   207   [ -z "$SCALA_HOME" ] && fail "Unknown SCALA_HOME -- Scala unavailable"
   190 
   208 
   191   [ -z "$ISABELLE_JEDIT_BUILD_HOME" ] && \
   209   [ -z "$ISABELLE_JEDIT_BUILD_HOME" ] && \
   192     fail "Unknown ISABELLE_JEDIT_BUILD_HOME -- missing auxiliary component"
   210     fail "Unknown ISABELLE_JEDIT_BUILD_HOME -- missing auxiliary component"
   193 
   211