Re: [Fink-devel] autoconf in fink scripts? (long)
Jeremy Erwin wrote: [] relevant .m4 file to see if there's an error. Here's the autoconf-2.13 version. (/sw/share/autoconf/acspecific.m4) There is no such file in autoconf25. The closest is probably /sw/share/autoconf/autoconf/c.m4 which contains if test -z $CPP; then AC_CACHE_VAL([ac_cv_prog_CPP], [dnl # Double quotes because CPP needs to be expanded for CPP in $CC -E $CC -E -traditional-cpp /lib/cpp do _AC_PROG_PREPROC_WORKS_IFELSE([break]) done ac_cv_prog_CPP=$CPP ])dnl CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi The result of this is that CPP is taken as cc -E, which does not work for opendx. The cc -E -traditional-cpp that is chosen in autoconf-2.13 is working. But this is more or less by accident. Maybe hard wiring the working version of CPP would be a good idea. I understand that running all the auto* stuff beforehand and casting the result in a patch file is not practical here due to the huge size of opendx, but doing it for some critical parts that are likely to vary with different versions of automake/autoconf might be not too hard. -- Martin ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel
Re: [Fink-devel] autoconf in fink scripts? (long)
At 0:57 Uhr +0200 29.05.2002, Martin Costabel wrote: [...] To continue this thought (proposal, rant?): I sometimes have the feeling that cvs committers are a little too trigger-happy, in that they kill the old version immediately when submitting a new one. It would be useful sometimes to be able to go back to the preceding version more easily. I think it'S quite easy to get back to an older version if you really must, using cvs. You can e.g. check out the state of a CVS repository (or only a single file/directory in it) given a date. That's pretty easy IMO. Cheers, Max -- --- Max Horn Software Developer email: mailto:[EMAIL PROTECTED] phone: (+49) 6151-494890 ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel
Re: [Fink-devel] autoconf in fink scripts? (long)
Jeremy Erwin wrote: I am in the process of testing a fink port of open dx (version 4.2.0) My port uses automake, so as to keep the patch smaller and easier to debug. What packages will insure that a would be compiler can run aclocal, automake, autoconf and autoheader? I'll give a long answer, because I feel that opendx is an important package, and because I (like some otheers, I guess) have spent some frustrating time trying to compile this thing. Sometimes it compiled, but did not work, sometimes it did not compile. But this was before the release of version 4.2.0. I have now tried your dx-4.2.0-1 package (found somewhere on the opendx mailing lists). It does not start compiling, because it depends on autoconf automake, and automake (*) in unstable, which is automake-1.6, depends on autoconf25 which conflicts with autoconf. With autoconf replaced by autoconf25 in the depends list, it started compiling but broke down after a while with an error that I have been getting sometimes (and sometimes not) when I earlier tried to compile opendx myself: cc -DHAVE_CONFIG_H -I. -I. -I../../../include -I../../../include -Dmacos -I/sw/include/libxml2 -I/sw/include/freetype2 -D_REENTRANT -I/sw/include -I/sw/include -I/usr/X11R6/include -I/usr/X11R6/include/X11 -I/sw/include -I/usr/X11R6/include -g -O2 -Wall -no-cpp-precomp -I/usr/X11R6/include -D_GNU_SOURCE -c `test -f 'buffer.c' || echo './'`buffer.c buffer.c:1: dxconfig . h : No such file or directory buffer.c:2: string . h : No such file or directory buffer.c:3: dx / dx . h : No such file or directory buffer.c:4: X11 / X . h : No such file or directory Note the spurious spaces. The file buffer.c had been made before by using cc -E as a preprocessor, which did not work well: cc -E __buffer.c | tr -s \044 \012 | sed -e '/^#/d' -e 's/INCLUDE2/#include/' -e 's/^pragma/#pragma/' buffer.c __buffer.c:10: illegal external declaration, missing `;' after `' __buffer.c:22: undefined type, found `Error' __buffer.c:24: undefined type, found `RGBColor' __buffer.c:118: undefined type, found `RGBColor' __buffer.c:157: undefined type, found `Error' __buffer.c:169: undefined type, found `Error' [some 800 similar errors skipped] And it did introduce a space after every symbol. I don't know whether this has to do with automake or autoconf, but there is a connection, see below. (*) Right now, fink offers a selection of four versions of automake under two (three?) different names, automake and automake15 (and automake-1.4). They sometimes can coexist, sometimes not, and they require different versions of autoconf. I'll summarize some of the situation here, but it is so confusing that I probably won't get it right. automake-1.4-p5-2: Needed for building some packages. Only exists in stable, not in unstable, although this violates fink policy. Has been removed and reintroduced several times. I tend to think ATM that this is the one that makes opendx build (?). In any case, if I have this installed, the above preprocessing of buffer.c is not done by cc -E, which does not work, but by cc -E -traditional-cpp, which does. automake-1.5-1: Only in stable. Depends on nothing; contains aclocal executable. automake15-1.5-2: Only in unstable. Depends on nothing; contains no aclocal executable (it is called aclocal-1.5 instead). Opendx wants an aclocal executable, so it does not start to build with this automake15. automake-1.6.1-1: Only in unstable. Depends on autoconf25 which conflicts with autoconf (which is at version 2.13-3 right now). Contains an aclocal executable. To answer your question: IMHO, you would have to do fink remove automake fink install automake-1.4-p5-2 fink install autoconf Some other combinations might work, too, but I haven't seen anything obvious. In the BuildDepends line, you would need autoconf automake-1.4-p5-2. I think automake ( 1.5) does not work, because fink sometimes regards automake-1.4 as name and p5 as version or something. -- Martin ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel
Re: [Fink-devel] autoconf in fink scripts? (long)
Max Horn wrote: [...] automake-1.4-p5-2: Needed for building some packages. Only exists in stable, not in unstable, although this violates fink policy. Nonsense! This is the case for many packages - newer version exists in unstable than in stable in many cases, that's not a violation of our policy but rather quite normal. You are right, of course, in the strict literal sense. In the sense of functionality, automake-1.4-p5 is rather different from the later versions (as it turns out, so is automake-1.5-1). So it feels rather like a different package than just an old version of the same package as versions 1.5-1 and 1.6-1. If unstable is meant to be a superset of stable, it would be good to have these older versions there, too. To continue this thought (proposal, rant?): I sometimes have the feeling that cvs committers are a little too trigger-happy, in that they kill the old version immediately when submitting a new one. It would be useful sometimes to be able to go back to the preceding version more easily. I don't mean to suggest to keep a lot of old cruft in the active cvs tree, but maybe just the second-to-latest version could be kept? And in stable, could the versions from the latest release also be kept in the active cvs tree? When trying to give advice, this would be useful. -- Martin ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel
Re: [Fink-devel] autoconf in fink scripts? (long)
Martin Costabel wrote: Jeremy Erwin wrote: [] I'm using fink supplied versions of automake-1.5, autoconf-2.13. Yes, I just tried this combination, too, and it compiled completely. So, unless someone has a better idea, perhaps you should require *exactly* these versions in BuildDepends (and then hope that nobody removes them in favor of newer versions). After another test, I can now confirm that autoconf25 does not work here. It finds cc -E for a preprocessor instead of cc -E -traditional-cpp and this produces garbage. Actually, I don't know why they don't just use cpp. One could probably patch one or two files to use the right thing (src/exec/libdx/local.mk and src/exec/dxmods/Makefile). -- Martin ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel
Re: [Fink-devel] autoconf in fink scripts? (long)
On Tuesday, May 28, 2002, at 07:24 PM, Martin Costabel wrote: Martin Costabel wrote: Jeremy Erwin wrote: [] I'm using fink supplied versions of automake-1.5, autoconf-2.13. Yes, I just tried this combination, too, and it compiled completely. So, unless someone has a better idea, perhaps you should require *exactly* these versions in BuildDepends (and then hope that nobody removes them in favor of newer versions). After another test, I can now confirm that autoconf25 does not work here. It finds cc -E for a preprocessor instead of cc -E -traditional-cpp and this produces garbage. Actually, I don't know why they don't just use cpp. One could probably patch one or two files to use the right thing (src/exec/libdx/local.mk and src/exec/dxmods/Makefile). If one has two copies of gcc (as is common with linux-- the kernel source may not be compatible with gcc-2.95.2) $CC -E is more likely to produce the correct results. As for autoconf-2.5, I'd look in the relevant .m4 file to see if there's an error. Here's the autoconf-2.13 version. (/sw/share/autoconf/acspecific.m4) AC_DEFUN(AC_PROG_CPP, [AC_MSG_CHECKING(how to run the C preprocessor) # On Suns, sometimes $CPP names a directory. if test -n $CPP test -d $CPP; then CPP= fi if test -z $CPP; then AC_CACHE_VAL(ac_cv_prog_CPP, [ # This must be in double quotes, not single quotes, because CPP may get # substituted into the Makefile and ${CC-cc} will confuse make. CPP=${CC-cc} -E # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. dnl Use a header file that comes with gcc, so configuring glibc dnl with a fresh cross-compiler works. AC_TRY_CPP([#include assert.h Syntax Error], , CPP=${CC-cc} -E -traditional-cpp AC_TRY_CPP([#include assert.h Syntax Error], , CPP=${CC-cc} -nologo -E AC_TRY_CPP([#include assert.h Syntax Error], , CPP=/lib/cpp))) ac_cv_prog_CPP=$CPP])dnl CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi AC_MSG_RESULT($CPP) AC_SUBST(CPP)dnl ]) ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel
Re: [Fink-devel] autoconf in fink scripts? (long)
On Tuesday, May 28, 2002, at 06:57 PM, Martin Costabel wrote: To continue this thought (proposal, rant?): I sometimes have the feeling that cvs committers are a little too trigger-happy, in that they kill the old version immediately when submitting a new one. It is possible to get it back; there's an Attic directory on the CVSWeb site with all the deleted files in the current directory. ___ Don't miss the 2002 Sprint PCS Application Developer's Conference August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm ___ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel