From: mmail Date: Wed, 25 Jan 2017 17:00:14 +0000 (+0100) Subject: mmail X-Git-Tag: sysd2sysv_0.1-1~12^2^2~1 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/projects.git/commitdiff_plain/10dcb8bac8d80fdd74a9ede5af533ed8b136716e?hp=87e30f291e29bef28836e9876f696051e2ee3616 mmail --- diff --git a/tools/cpan2deb b/tools/cpan2deb new file mode 100755 index 0000000..280e9e4 --- /dev/null +++ b/tools/cpan2deb @@ -0,0 +1,74 @@ +#!/bin/bash +set -e + +usage="cpan2deb " + +if [ $# -ne 1 ]; then + echo $usage + exit 1 +fi + +cd $HOME +if [ -d locallib ]; then + rm -rf locallib +fi +if [ -d build ]; then + rm -rf build +fi + +echo "call CPAN ..." +cpan -m $1 1>cpan.out 2>&1 || (echo "cpan failed"; exit 1) + +# find build directory +mname=$1 +name=lib${mname/::/-}-perl +name=${name,,*} +#builddir_prefix=${mname/::/-} +builddir=$(ls -rtd ~/.cpan/build/*/ |tail -1) + +cd $builddir +perl Makefile.PL INSTALL_BASE="~/locallib" +make +make install 1>~/cpan.out 2>&1 +echo "Module $1 installed to ~/locallib, output written to cpan.out" +cd + +# check version +version=$(perl -M$mname -e 'print $ARGV[0]->VERSION' $mname) + +mkdir build +cd build + +mkdir -p $name/DEBIAN +cat << EOF >$name/DEBIAN/control +Package: $name +Version: $version +Section: base +Priority: optional +Architecture: all +Depends: +Maintainer: WagnerTech UG +Description: $1 perl modul +EOF + +# execute copy script +#mkdir -p $name/usr/share/perl5 +#mkdir -p $name/usr/share/man +#. cpan.cp $name + +# move locallib content +mkdir -p $name/usr/local/ + +for dir in $(ls ~/locallib); do + case $dir in + lib) ;; + share) mv ~/locallib/share $name/usr/local/ + ;; + man) mv ~/locallib/man $name/usr/ + ;; + esac +done + +fakeroot dpkg-deb --build $name +cp $name.deb ${name}_$version.deb +echo "${name}_$version.deb erstellt." diff --git a/tools/make/configure b/tools/make/configure deleted file mode 100755 index 31efc26..0000000 --- a/tools/make/configure +++ /dev/null @@ -1,135 +0,0 @@ -#!/bin/bash -set -e - -function echo_usage { - echo "usage: configure [options]" - echo " -b " - echo " -a " - echo " -g " - echo " -n : do not delete src dir" -} - -# to build a package you need ... -# .co: checkout commands -# .cp (optional): copy step for package production -# .cpp.sh (optional): commands to setup the C++ compile environment - -if [ $# -lt 2 ] -then - echo_usage - exit 1 -fi - -paket=$1 -build=$2 -shift 2 -ARCH="" -cpp_build=0 -alt_repos="" -delete_src=1 - -while getopts ":a:b:g:n" opt; do - case $opt in - a) ARCH=$OPTARG - ;; - b) branch=$OPTARG - ;; - g) alt_repos="-g $OPTARG" - ;; - n) delete_src=0 - ;; - \?) echo "Invalid option: -$OPTARG" - echo_usage - exit 1 - ;; - :) echo "Option -$OPTARG requires an argument." - echo_usage - exit 1 - ;; - esac -done - -ln -sf projects/tools/make/makefile . - -# check standard files -if [ ! -x $paket.co ] -then - echo "file $paket.co missing or not executable." - exit 1 -fi - -# clean dirs and check out -if [ -d src -a $delete_src -eq 1 ] -then - rm -rf src -fi - -if [ -e $paket ] -then - rm -rf $paket -fi -rm *.stamp || true -rm make.pre || true - -mkdir -p src -cwd=$(pwd) - -# checkout -pushd src >/dev/null - ../$paket.co $alt_repos $build -popd >/dev/null - -# load util functions for C/C++ - build -if [ -f $paket.cpp.sh ] -then - cpp_build=1 - . projects/tools/make/c_configure.sh - . $paket.cpp.sh -fi - -# copy package control -control=$(find -L src -name $paket.control) -if [ -z "$control" ] -then - echo "warning: control file not found" - echo " this file is necessary for any package production." -else - sed "s/%BUILD%/$build/" $control |sed "s/%ARCH%/$ARCH/" >$paket.control - echo "$paket.control written." - - # extract version - version=$(grep Version $paket.control |sed "s/Version: //") -fi - -# check for copy file -copy=$(find -L src -name $paket.cp) -if [ -n "$copy" ] -then - ln -sf $copy . -else - echo "warning: file $paket.cp missing or not executable:" - echo " this file is necessary for any package production." -fi - -# check for postinst -postinst=$(find -L src -name $paket.postinst) -if [ -n "$postinst" ] -then - ln -sf $postinst . -fi - -# create generic make.pre, if not existing -if [ ! -f make.pre ] -then - cat >>make.pre <> make.pre -echo "build = $build" >> make.pre -