On 12/11/2014 2:50 PM, Christian Kellermann wrote:
* Corinna Vinschen <corinna-cyg...@cygwin.com> [141211 13:30]:
If you don't use any of the automatisms and special features described
in the cygport manual's postinstall section, I guess you either have
to install the script in your install rule, or you have to install it
manually from the src_install section (uhm... :}).  A doexe command
should do it, I think.

How about this?

[cut]


src_install() {
        cd ${B}
        cyginstall
        cat > ${B}/chicken.sh <<HERE
#!/bin/bash
chicken-install -updatedb

 eventually -update-db

HERE
        exeinto /etc/postinstall
        doexe chicken.sh
        cat > ${B}chicken.sh <<HERE
#!/bin/bash
rm $(chicken-install -repository)/modules.db
HERE
        exeinto /etc/preremove
        doexe chicken.sh
}


The cygport documentation is not explicit on this argument
but the easy way is to put in CYGWIN-PATCHES two files

  postinstall.sh
  preremove.sh

that will be placed during cyginstall as

  /etc/postinstall/chicken.sh
  /etc/preremove/chicken.sh

Please test the attachments and let me know, so I will
build for you the final x86_64 package

For me is GTG

Regards
Marco

# package name
NAME="chicken"
VERSION=4.9.0.1
RELEASE=1

# setup.hint generation
CATEGORY="interpreters"
SUMMARY="A practical and portable scheme system."
DESCRIPTION="A practical and portable scheme system.
CHICKEN is a compiler for the Scheme programming language. CHICKEN
produces portable and efficient C, supports almost all of the R5RS
Scheme language standard, and includes many enhancements and
extensions."

REQUIRES="make gcc-core gcc-g++"

# source and patch files
SRC_URI="http://code.call-cc.org/releases/${PV}/${P}.tar.gz";
PATCH_URI="chicken-prepost.patch"

AR=$(arch)
if [ $AR = "i686" ]
then
   MAKEOPTS="PREFIX=/usr PLATFORM=cygwin ARCH=x86"
elif [ $AR = "x86_64" ]
then
   MAKEOPTS="PREFIX=/usr PLATFORM=cygwin ARCH=x86-64 HACKED_APPLY="
else
   ECHO "Unknown Architecture"
fi

src_compile() {
        lndirs
        cd ${B}
        cygmake 
}

src_install() {
        cd ${B}
        cyginstall
}

src_test() {
        cd ${B}
        cygmake -i check 
}
--- /dev/null   2014-12-11 17:06:18.000000000 +0100
+++ CYGWIN-PATCHES/postinstall.sh       2014-12-11 17:03:44.236009800 +0100
@@ -0,0 +1,2 @@
+#!/bin/bash
+chicken-install -update-db
--- /dev/null   2014-12-11 17:06:29.000000000 +0100
+++ CYGWIN-PATCHES/preremove.sh 2014-12-11 17:04:17.607918600 +0100
@@ -0,0 +1,2 @@
+#!/bin/bash
+rm $(chicken-install -repository)/modules.db

Reply via email to