[csw-devel] SF.net SVN: gar:[4717] csw/mgar/gar/v2/bin/fixlibtool
valholla at users.sourceforge.net
valholla at users.sourceforge.net
Wed May 6 18:11:39 CEST 2009
Revision: 4717
http://gar.svn.sourceforge.net/gar/?rev=4717&view=rev
Author: valholla
Date: 2009-05-06 16:11:36 +0000 (Wed, 06 May 2009)
Log Message:
-----------
new fixlibtool
Added Paths:
-----------
csw/mgar/gar/v2/bin/fixlibtool
Copied: csw/mgar/gar/v2/bin/fixlibtool (from rev 4714, csw/mgar/pkg/fixlibtool/trunk/fixlibtool)
===================================================================
--- csw/mgar/gar/v2/bin/fixlibtool (rev 0)
+++ csw/mgar/gar/v2/bin/fixlibtool 2009-05-06 16:11:36 UTC (rev 4717)
@@ -0,0 +1,66 @@
+#!/bin/bash
+####################################################
+#
+# $URL$
+# $Date$
+# $Revision$
+# $LastChangedRevision$
+#
+# Author: Mike Watters (mwatters~~@~~opencsw.org)
+# Intended to remove the use of libtool's
+# pseudo-libraries for opencsw builds.
+#
+# Usage: fixlibtool $(WORKSRC)
+#
+# Intened usage:
+# DISTFILES += fixlibtool
+# post-configure-modulated:
+# @(echo "~~~ Fixing Libtool ~~~")
+# @$(DOWNLOADDIR)/fixlibtool $(WORKSRC)
+# @$(MAKECOOKIE)
+#
+####################################################
+
+umask 0022
+PATH=/opt/csw/bin
+
+if [ $# -ne 1 ]; then
+ gecho "USAGE: $(basename $0) WORKSRC"
+ exit 1
+fi
+BASEPATH=$1
+
+## Fix Makefiles
+for mk in $(gfind ${BASEPATH} -name Makefile -print); do
+ gcp ${mk} ${mk}.orig
+ LT_FILES=$(ggrep '/opt/csw.*/lib/.*\.la' ${mk} | \
+ gsed "s/^.*\(\/opt\/csw.*\/lib\/.*\.la\).*$/\1/")
+
+ for file in ${LT_FILES}; do
+ LIB_NAME=$(ggrep 'dlname=' ${file} | \
+ gsed -e "s/.*'\(.*\)'/\1/" \
+ -e "s/^lib//" \
+ -e "s/\.so.*$//")
+ fixpath=$(gecho $file |gsed 's/\//\\\//g')
+ gsed "s/${fixpath}/-l${LIB_NAME}/g" ${mk} >${mk}.new
+ gmv ${mk}.new ${mk}
+ gchmod +x ${mk}
+ done
+done
+
+## Fix libtool Script
+for lt in $(gfind ${BASEPATH} -name libtool -print); do
+ gcp ${lt} ${lt}.orig
+ gsed "/for search_ext in .*\.la/s/\.la//" ${lt} >${lt}.new
+ gmv ${lt}.new ${lt}
+ gchmod +x ${lt}
+done
+
+for LTMAIN in $(gfind ${BASEPATH} -name ltmain.sh -print); do
+ gcp ${LTMAIN} ${LTMAIN}.orig
+ gsed "/for search_ext in .*\.la/s/\.la//" ${LTMAIN} >${LTMAIN}.new
+ gmv ${LTMAIN}.new ${LTMAIN}
+ gchmod +x ${LTMAIN}
+done
+
+exit 0
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the devel
mailing list