]> git.donarmstrong.com Git - lilypond.git/blobdiff - cygwin/mknetrel.split
(dos_to_posix)[__CYGWIN__]: Return
[lilypond.git] / cygwin / mknetrel.split
index a64822b2addd3a277fa9aaca04f13e375f975f0d..8f67fc0282f66c7897d35e9ce4779506ab4d277e 100644 (file)
@@ -105,11 +105,11 @@ extras_postinstall () {
 
     readmes="$(find . -maxdepth 1 -type f -a -name '[A-Z]*' | egrep -v 'Makefile|GNUmakefile')"
     install -m644 $readmes $inst/$packagedocdir
+    install -m644 $cygwin/changelog $inst/$packagedocdir/changelog.$Cygwin
 
     ## Cygwin readmes
     cd $src || exit 1
     install -d -m755 $inst/$cygdocdir
-    install -m644 $cygwin/changelog $inst/$cygdocdir/changelog.$Cygwin
 
     cd $src || exit 1
     install -m644 $cygwin/README $inst/$packagedocdir/README.$Cygwin
@@ -119,17 +119,64 @@ extras_postinstall () {
     install -m644 $cygwin/out/README $inst/$cygdocdir/$package.README
 }
 
+auto_requires () {
+    dlls=
+    requires=
+    dlls=$(find . -name '*dll' -o -name '*.exe' \
+       | xargs $cygcheck 2>&1 | grep '^  [^ ]' \
+       | tr -d '[ \r]' | sed 's@.*\\@@g' | sort -u)
+    for x in $(ls -1 bin/* sbin/*); do
+       case $x in
+           *.exeXXX|*.dllXXX)
+               dlls="$($cygcheck $x 2>&1 | grep '^  [^ ]' | tr -d '[ \r]' | sed 's@.*bin\\@@g') $dlls"
+               ;;
+       esac
+       case "$(file -b $x)" in
+           "*Bourne shell script*")
+               requires="bash\n$requires"
+               ;;
+           "*guile*script*")
+               requires="guile\n$requires"
+               ;;
+           "*perl*script*")
+               requires="perl\n$requires"
+               ;;
+           "*python*script*")
+               requires="python\n$requires"
+               ;;
+       esac
+    done
+    for x in $dlls; do
+       requires="$(cyg-apt find $x | sed 's/:.*//')\n$requires"
+    done
+    requires=$(echo -e "$requires" | sort -u)
+    echo $requires
+}
+
 hint () {
     if [ -r $shint ]; then
        cp $shint $hint
     else
        cat > $hint <<EOF
-sdesc: "$subname"
-ldesc: "$subname - no description (missing $package/$(dirname $shint) file)"
+sdesc: "$name"
+ldesc: "$name - no description (missing $package/$cygwin/$(basename $shint) file)"
 EOF
     fi
     grep ^requires: $hint || echo "requires: $depends" >> $hint
-    grep ^build-requires: $hint || echo "build-requires: $build_depends" >> $hint
+    if [ "$cygwin" == "cygwin" ]; then
+       if grep ^build-requires: $hint; then
+           mv $hint $hint~
+           grep -v build-requires $hint~ > $hint
+       fi
+       if iscygwin; then
+           cygcheck=cygcheck.exe
+       else
+           cygcheck="wine $cygwin_prefix/bin/cygcheck.exe"
+       fi
+       echo "#auto-requires: $(cd usr; auto_requires)" >> $hint
+    else
+       grep ^build-requires: $hint || echo "build-requires: $build_depends" >> $hint
+    fi
 }
 
 domkdist () {
@@ -174,7 +221,8 @@ domkdist () {
     echo creating $tarstem.tar.bz2
     cd $inst || exit 1
 
-    shint=$src/$cygwin/setup.hint
+    name=$base
+    shint=$src/$cygwin/$name.hint
     hint=$uploads/setup.hint
     hint
     find * -print | egrep -v '\.cvsignore|\.bak$|\.orig$|\.o$|\.rej$|~$|^.#|CVS|/tags$' | sort | tar -T - --no-recursion --owner=0 --group=0 -cjf $tarstem.tar.bz2
@@ -189,9 +237,10 @@ domkdist () {
        depends=$(eval echo '$'${i}_depends)
        mkdir -p $subload || exit 1
        echo creating $subtarstem.tar.bz2
+       name=$subname
+       cd $inst-$i
        hint
        grep ^external-source: $hint || echo "external-source: $base" >> $hint
-       cd $inst-$i
        hard2soft
        find * -print | egrep -v '\.cvsignore|\.bak$|\.orig$|\.o$|\.rej$|~$|^.#|CVS|/tags$' | sort | tar -T - --no-recursion --owner=0 --group=0 -cjf $subtarstem.tar.bz2
     done
@@ -200,8 +249,8 @@ domkdist () {
     cd $src/.. || exit 1
     echo creating "$tarstem"-src.tar.bz2
     ##find $package_src/* -print -follow | egrep -v '\.cvsignore|\.bak$|\.orig$|\.o$|~$|^.#|CVS|%redact|/tags$' | egrep -v "$src_exclude" | sort | tar -T - --no-recursion --owner=0 --group=0 -cjf "$tarstem"-src.tar.bz2
-    find $package_src/* -print | egrep -v '\.cvsignore|\.bak$|\.orig$|\.o$|\.rej$|~$|^.#|CVS|%redact|/tags$' | egrep -v "$src_exclude" | sort | tar -T - --no-recursion --owner=0 --group=0 -cjf "$tarstem"-src.tar.bz2
-    ##cd $package_src && tar -cj --exclude='\.cvsignore' --exclude='\.bak$' --exclude='\.orig$' --exclude='\.o$' --exclude='~$' --exclude='^.#' --exclude='CVS' --exclude='%redact' --exclude='/tags$' --owner=0 --group=0 -f "$tarstem"-src.tar.bz2 .
+    find $package_src/* -print | egrep -v '\.cvsignore|\.bak$|\.orig$|\.o$|\.rej$|~$|^.#|CVS|%redact|/tags$|/TAGS$|autom4te.cache$' | egrep -v "$src_exclude" | sort | tar -T - --no-recursion --owner=0 --group=0 -cjf "$tarstem"-src.tar.bz2
+    ##cd $package_src && tar -cj --exclude='\.cvsignore' --exclude='\.bak$' --exclude='\.orig$' --exclude='\.o$' --exclude='~$' --exclude='^.#' --exclude='CVS' --exclude='%redact' --exclude='/tags$' --exclude='/TAGS$' --exclude='autom4te.cache' --owner=0 --group=0 -f "$tarstem"-src.tar.bz2 .
     postpackage
 }