diff --git a/src/generate_curl_options_list.sh b/src/generate_curl_options_list.sh index 9e88054..a8c3c7d 100755 --- a/src/generate_curl_options_list.sh +++ b/src/generate_curl_options_list.sh @@ -2,6 +2,20 @@ root=`dirname $0` +if [ "$NODE_CURL_H" != "" ] ; then + if [ ! -f "$NODE_CURL_H" ] ; then + echo "cannot find curl's header file $NODE_CURL_H ." + exit 1 + fi + curl_header=$NODE_CURL_H +elif [ -f "/usr/local/include/curl/curl.h" ] ; then + curl_header="/usr/local/include/curl/curl.h" +elif [ -f "/usr/include/curl/curl.h" ] ; then + curl_header="/usr/include/curl/curl.h" +fi + +echo "extract constants from $curl_header" + generate() { name=$1 pattern=$2 @@ -10,7 +24,7 @@ generate() { ( echo "// generated by $0 at $(date)" echo "CurlOption $name[] = {" - cat /usr/include/curl/curl.h|perl -ne "/$pattern/i && print \"\t{\\\"\$1\\\", CURL${prefix}_\$1},\n\"" + cat "$curl_header"|perl -ne "/$pattern/i && print \"\t{\\\"\$1\\\", CURL${prefix}_\$1},\n\"" echo '};' ) > $root/$name.h }