#!/bin/sh # # create specific link library for libpthread to avoid some linkage problems like double defined WinMain # # for example in "gcc -o test -lpthread main.o" WinMain is double defined # LIB_CYGWIN=/lib/libcygwin.a LIB_PTHREAD=/lib/libpthread.a # awk script for extracing gawk related object files GAWK=' $1 ~ /^d00/ { file = $1; gsub(":","",file); } $3 ~ /^_pthread/ { print file; } ' # make backup of pthread link library cp -f $LIB_PTHREAD $LIB_PTHREAD.org rm -f $LIB_PTHREAD # extract pthread related object files nm $LIB_CYGWIN | gawk "$GAWK" | xargs ar x $LIB_CYGWIN # create new link library for pthread ar cru $LIB_PTHREAD *.o ranlib $LIB_PTHREAD # remove temporay files rm -f *.o