Massimo, I'm on Debian sid. I've seen Rivet package has tcl-dev as prerequisite, but I changed it to tcl8.6-dev.
The change to the panic() call did the job. You could apply the change to the codebase, too. Thanks a lot, Marco 2013/5/5 Massimo Manghi <[email protected]> > this thread should probably move to [email protected] > > > On 05/05/2013 11:29 AM, Marco Pallante wrote: > >> Hello everyone, >> >> I'm trying to recompile Rivet against Tcl8.6 under Debian by using the >> Debian source package, but something goes wrong. Here's what I'm doing. >> >> $ apt-get source libapache2-mod-rivet >> $ cd libapache2-mod-rivet-2.1.1 >> $ vim debian/rules >> * in rules, I change the following options >> * TCL_VERSION=8.6 >> > > are you working with Debian wheezy or sid? On sid TCL_VERSION definition > in rules should be useless and be removed. In the effort to keep the > package Ubuntu compatible I had to let it depend on tcl-dev instead of > tcl8.5-dev and tell the build system to peek into /usr/bin to find > tclConfig.sh. On Ubuntu this script knows how to build the package on a > multiarch system. This issue is coming up soon on Debian too, as soon as > Debian wheezy is released. The package is now in Debian / sid > > > > * and >> * --with-tcl=/usr/lib/tcl8.6 >> * and >> * --with-tclsh=/usr/bin/tcl8.6 >> $ dpkg-buildpackage -rfakeroot -b >> >> compilation goes on until it tryies to build the >> rivet/apache-2/rivetCore.c source. There, I get this error: >> >> rivetCore.c: In function 'TestpanicCmd': >> rivetCore.c:1459:5: error: format not a string literal and no format >> arguments [-Werror=format-security] >> >> > weird, this is a compiler issue and it has to do with the hardening > compilation switches that enforced stricter rules for calling printf-like > calls. I can't reproduce the error but you may try changing the call as > > panic("%s",argString) > > it's compatible and safer. I changed myself many calls like these here and > there in the code to prevent Debian build system from complaining and make > mod_rivet's code in principle a bit safer > > > If I just change the TCL_VERSION variable, without touching the >> configure options, the .deb is built, but against Tcl8.5. >> >> I also downloaded the sources right from the Rivet website and I >> compiled them against Tcl8.6 by using the same configure options I found >> in debian/rules, and it went well. >> >> Could you give me some help? I'm almost sure I'm doing something wrong, >> but I never recompiled from source packages, so I've no idea about what >> it is. >> >> Thank you very much, >> >> Marco Pallante >> > > -- Massimo >
