mirror of
https://git.freebsd.org/ports.git
synced 2025-04-28 09:36:41 -04:00
263 lines
8.8 KiB
Text
263 lines
8.8 KiB
Text
Index: configure
|
|
@@ -1,11 +1,11 @@
|
|
-#!/usr/bin/env bash
|
|
+#!/bin/sh
|
|
|
|
CONFIG="config.mk"
|
|
PREFIX="/usr/local"
|
|
|
|
DEBUG=
|
|
LIQSRCDIR=./lib
|
|
-LIQCONFIGURE=(--quiet)
|
|
+LIQCONFIGURE=--quiet
|
|
SSE=auto
|
|
OPENMP=
|
|
LIBPNG_DIR=.
|
|
@@ -35,7 +35,7 @@
|
|
help "--with-libimagequant=<dir> external libimagequant (lib/ default)"
|
|
help "--with-openmp=static compile with multicore support"
|
|
help "--with-lcms2/--without-lcms2 compile with color profile support"
|
|
-if [[ "$OSTYPE" =~ "darwin" ]]; then
|
|
+if echo "$OSTYPE" | grep -q "darwin"; then
|
|
help "--with-cocoa/--without-cocoa use Cocoa framework to read images"
|
|
fi
|
|
help "--with-libpng=<dir> search for libpng in directory"
|
|
@@ -50,35 +50,35 @@
|
|
CC=*)
|
|
CC=${i#*=}
|
|
SKIP_CC_CHECK=1
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
CFLAGS=*)
|
|
CFLAGS=${i#*=}
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
LDFLAGS=*)
|
|
LDFLAGS=${i#*=}
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--enable-debug)
|
|
DEBUG=1
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--enable-sse)
|
|
SSE=1
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--disable-sse)
|
|
SSE=0
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--with-openmp)
|
|
OPENMP=1
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--with-openmp=static)
|
|
OPENMP=static
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--with-lcms2)
|
|
LCMS2=1
|
|
@@ -103,16 +103,16 @@
|
|
;;
|
|
--prefix=*)
|
|
PREFIX=${i#*=}
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
# can be used multiple times or in quotes to set multiple flags
|
|
--extra-cflags=*)
|
|
EXTRA_CFLAGS="$EXTRA_CFLAGS ${i#*=}"
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
--extra-ldflags=*)
|
|
EXTRA_LDFLAGS="$EXTRA_LDFLAGS ${i#*=}"
|
|
- LIQCONFIGURE+=("$i")
|
|
+ LIQCONFIGURE="$LIQCONFIGURE $i"
|
|
;;
|
|
*)
|
|
echo "warning: unknown switch ${i%%=*} (see $0 --help for the list)"
|
|
@@ -122,7 +122,7 @@
|
|
|
|
# If someone runs sudo make install as very first command, and configure later,
|
|
# $CONFIG cannot be overwritten, and must be deleted before continuing.
|
|
-if [[ -f "$CONFIG" && ! -w "$CONFIG" ]]; then
|
|
+if [ -f "$CONFIG" -a ! -w "$CONFIG" ]; then
|
|
echo "Cannot overwrite file $CONFIG! Please delete it."
|
|
exit 1
|
|
fi
|
|
@@ -160,7 +160,7 @@
|
|
find_pkgconfig() {
|
|
local LIBNAME=$1
|
|
PKG_CONFIG=${PKG_CONFIG:-pkg-config}
|
|
- if $PKG_CONFIG --exists "$LIBNAME" &> /dev/null; then
|
|
+ if $PKG_CONFIG --exists "$LIBNAME" > /dev/null; then
|
|
cflags "$($PKG_CONFIG --cflags "$LIBNAME")"
|
|
lflags "$($PKG_CONFIG --libs "$LIBNAME")"
|
|
LIBRARY_FOUND_VERSION=$($PKG_CONFIG --modversion "$LIBNAME")
|
|
@@ -244,9 +244,13 @@
|
|
return 0
|
|
fi
|
|
|
|
- for i in "${DIRS[@]}"; do
|
|
- DIR=($i)
|
|
- if find_dynamic "$LIBNAME" "$HEADERPATTERN" "$DYNAMICPATTERN" "${DIR[0]}" "${DIR[1]}"; then
|
|
+ # destroys positional parameters
|
|
+ set -- ${DIRS}
|
|
+ while [ -n "$1" -a -n "$2" ]; do
|
|
+ DIRS_h="$1"
|
|
+ DIRS_l="$2"
|
|
+ shift 2
|
|
+ if find_dynamic "$LIBNAME" "$HEADERPATTERN" "$DYNAMICPATTERN" "${DIRS_h}" "${DIRS_l}"; then
|
|
return 0
|
|
fi
|
|
done
|
|
@@ -303,12 +307,8 @@
|
|
# SSE
|
|
if [ "$SSE" = 'auto' ]; then
|
|
SSE=0
|
|
- if type uname > /dev/null; then
|
|
- if [[ "$(uname -m)" =~ "amd64" || "$(uname -m)" =~ "x86_64" ||
|
|
- "$(grep -E -m1 "^flags" /proc/cpuinfo)" =~ "sse" ]]; then
|
|
- SSE=1
|
|
- fi
|
|
- fi
|
|
+ echo $(uname -m) | grep -E -q '(amd|x86_)64' && SSE=1
|
|
+ grep -E -m1 -q '^flags.*sse' /proc/cpuinfo 2>/dev/null && SSE=1
|
|
fi
|
|
|
|
if [ "$SSE" -eq 1 ]; then
|
|
@@ -331,9 +331,8 @@
|
|
else
|
|
OPENMPFLAGS="-fopenmp"
|
|
fi
|
|
- if [[ "$("$CC" -xc -E $OPENMPFLAGS <(echo "#ifdef _OPENMP
|
|
- #include <omp.h>
|
|
- #endif") 2>&1)" =~ "omp_get_thread_num" ]]; then
|
|
+ if echo "$(printf '#ifdef _OPENMP\n#include <omp.h>\n#endif\n' | \
|
|
+ "$CC" -xc -E $OPENMPFLAGS - 2>&1)" | grep -q omp_get_thread_num; then
|
|
cflags "$OPENMPFLAGS"
|
|
lflags "$OPENMPFLAGS"
|
|
status "OpenMP" "yes"
|
|
@@ -348,7 +347,7 @@
|
|
fi
|
|
|
|
# Cocoa
|
|
-if [[ "$OSTYPE" =~ "darwin" ]]; then
|
|
+if echo "$OSTYPE" | grep -q "darwin"; then
|
|
if [ -z "${MACOSX_DEPLOYMENT_TARGET+isset}" ]; then
|
|
cflags "-mmacosx-version-min=10.9"
|
|
lflags "-mmacosx-version-min=10.9"
|
|
@@ -356,32 +355,29 @@
|
|
fi
|
|
|
|
# pairs of possible *.h and lib*.so locations
|
|
-DIRS=()
|
|
+DIRS=
|
|
|
|
if command -v >/dev/null libpng-config; then
|
|
- DIRS+=("$(libpng-config --prefix) $(libpng-config --libdir)")
|
|
+ DIRS="$(libpng-config --prefix) $(libpng-config --libdir)"
|
|
fi
|
|
|
|
-if [ -n $"LIQSRCDIR" ]; then
|
|
- DIRS+=("$LIQSRCDIR" "$LIQSRCDIR") # local libimagequant
|
|
+if [ -n "$LIQSRCDIR" ]; then
|
|
+ DIRS="$DIRS $LIQSRCDIR $LIQSRCDIR" # local libimagequant
|
|
fi
|
|
|
|
-DIRS+=(
|
|
- "/usr/local/include /usr/local/lib"
|
|
- "/usr/include /usr/lib64"
|
|
- "/usr/include /usr/lib"
|
|
- "/opt/local/include /opt/local/lib" # macports
|
|
- )
|
|
+DIRS="$DIRS /usr/local/include /usr/local/lib \
|
|
+ /usr/include /usr/lib \
|
|
+ /opt/local/include /opt/local/lib" # macports
|
|
|
|
-if [[ "$OSTYPE" =~ "darwin" ]]; then
|
|
+if echo "$OSTYPE" | grep -q "darwin" ; then
|
|
SOLIBSUFFIX=dylib
|
|
|
|
# Search Developer SDK paths, since Apple seems to have dropped the standard Unixy ones
|
|
XCODE_CMD="xcode-select"
|
|
XCODE_PATH=$($XCODE_CMD -p)
|
|
- DIRS+=("$XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include $XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib")
|
|
- DIRS+=("$XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include $XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib")
|
|
-elif [[ "$OSTYPE" =~ "msys" ]]; then
|
|
+ DIRS="$DIRS $XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include $XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib"
|
|
+ DIRS="$DIRS $XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include $XCODE_PATH/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/lib"
|
|
+elif echo "$OSTYPE" | grep -q "msys" ; then
|
|
SOLIBSUFFIX=dll
|
|
else
|
|
SOLIBSUFFIX=so
|
|
@@ -422,7 +418,7 @@
|
|
if echo "#include \"png.h\"
|
|
int main(){
|
|
return !png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL);
|
|
-}" | "$CC" -xc -std=c99 -o /dev/null $CFLAGS $LDFLAGS - &> /dev/null; then
|
|
+}" | "$CC" -xc -std=c99 -o /dev/null $CFLAGS $LDFLAGS - >/dev/null 2>&1; then
|
|
status "libpng" "custom flags"
|
|
HAS_LIBPNG=1
|
|
fi
|
|
@@ -433,7 +429,7 @@
|
|
if [ -n "$PNGH" ]; then
|
|
PNGH_STRING=$(pngh_string "$PNGH")
|
|
PNGH_MAJMIN=$(pngh_majmin "$PNGH")
|
|
- if [[ -n "$PNGH_STRING" && -n "$PNGH_MAJMIN" ]]; then
|
|
+ if [ -n "$PNGH_STRING" -a -n "$PNGH_MAJMIN" ]; then
|
|
LIBPNGA=$(find_f "$LIBPNG_DIR" "libpng${PNGH_MAJMIN}.a")
|
|
if [ -z "$LIBPNGA" ]; then
|
|
LIBPNGA=$(find_f "$LIBPNG_DIR" "libpng.a")
|
|
@@ -452,14 +448,19 @@
|
|
if find_pkgconfig libpng; then
|
|
HAS_LIBPNG=1
|
|
else
|
|
- for i in "${DIRS[@]}"; do
|
|
- DIR=($i)
|
|
- PNGH=$(find_h "${DIR[0]}" "png.h")
|
|
+ # destroys positional parameters
|
|
+ set -- ${DIRS}
|
|
+ while [ -n "$1" -a -n "$2" ]; do
|
|
+ DIRS_h="$1"
|
|
+ DIRS_l="$2"
|
|
+ shift 2
|
|
+
|
|
+ PNGH=$(find_h "${DIRS_h}" "png.h")
|
|
if [ -n "$PNGH" ]; then
|
|
PNGH_STRING=$(pngh_string "$PNGH")
|
|
PNGH_MAJMIN=$(pngh_majmin "$PNGH")
|
|
- if [[ -n "$PNGH_STRING" && -n "$PNGH_MAJMIN" ]]; then
|
|
- LIBPNGSO=$(find_f "${DIR[1]}" "libpng${PNGH_MAJMIN}.$SOLIBSUFFIX*")
|
|
+ if [ -n "$PNGH_STRING" -a -n "$PNGH_MAJMIN" ]; then
|
|
+ LIBPNGSO=$(find_f "${DIRS_l}" "libpng${PNGH_MAJMIN}.$SOLIBSUFFIX*")
|
|
if [ -n "$LIBPNGSO" ]; then
|
|
cflags "-I${PNGH%/*}"
|
|
lflags "-L${LIBPNGSO%/*} -lpng${PNGH_MAJMIN}"
|
|
@@ -473,7 +474,7 @@
|
|
fi
|
|
fi
|
|
if [ "$HAS_LIBPNG" -eq 0 ]; then
|
|
- if [[ "$OSTYPE" =~ "darwin" ]]; then
|
|
+ if echo "$OSTYPE" | grep -q "darwin"; then
|
|
LIBPNG_CMD='`brew install libpng`'
|
|
else
|
|
LIBPNG_CMD='`apt-get install libpng16-dev` or `apt-get install libpng-dev` or `yum install libpng-devel`'
|
|
@@ -542,6 +543,6 @@
|
|
SOLIBSUFFIX = $SOLIBSUFFIX
|
|
STATICLIBDEPS = $STATICLIBDEPS
|
|
LIQSRCDIR = $LIQSRCDIR
|
|
-LIQCONFIGUREFLAGS = $(printf "'%s' " "${LIQCONFIGURE[@]}")
|
|
+LIQCONFIGUREFLAGS = "$LIQCONFIGURE"
|
|
" > "$CONFIG"
|
|
|