Jan Stary <h...@stare.cz> writes:

> On Aug 21 18:08:27, m...@mansr.com wrote:
>> Jan Stary <h...@stare.cz> writes:
>> 
>> > On Aug 21 17:16:12, h...@stare.cz wrote:
>> >> > checking for magic.h... no
>> >> > checking for zlib.h... yes
>> >> > checking for uncompress in -lz... yes
>> >> > checking for png.h... no
>> >> > checking for mad.h... no
>> >> > checking for id3tag.h... no
>> >> > checking for lame/lame.h... no
>> >> > checking for lame.h... no
>> >> > 
>> >> >         $ pkg_info -L lame | grep .h$    
>> >> >         /usr/local/include/lame/lame.h
>> >> > 
>> >> >         OpenBSD installs third-party packages into /usr/local/,
>> >> >         but the configure script does not look there; it porbably
>> >> >         only searches in /usr, because that's where linux distributions
>> >> >         install their packages. (I'm not saying it should
>> >> >         -- I will test the same with -I added to the CPPFLAGS,
>> >> >         as the OpenBSD port of SoX does.)
>> >> 
>> >> Running ./configure with CPPFLAGS and LDFLAGS,
>> >> so that the headers and libraries are found,
>> >> as per ./configure --help:
>> >> 
>> >>   LDFLAGS   linker flags, e.g. -L<lib dir>
>> >>               if you have libraries in a nonstandard directory <lib dir>
>> >> 
>> >>   CPPFLAGS  (Objective) C/C++ preprocessor flags, e.g. -I<include dir>
>> >>             if you have headers in a nonstandard directory <include dir>
>> >> 
>> >> I am looking at png as an example.
>> >> 
>> >> With plain ./configure , png.h (which is /usr/local/include/png.h)
>> >> is not found, as described above.
>> >> 
>> >>   checking for png.h... no
>> >> 
>> >> With ./configure CPPFLAGS='-I/usr/local/include' the png.h header is 
>> >> found,
>> >> but the library is not, unsurprisingly. But:
>> >> 
>> >>   $ ./configure CPPFLAGS='-I/usr/local/include'
>> >>   [...]
>> >>   checking for png.h... yes
>> >>   checking for png_set_rows in -l101... no
>> >> 
>> >> I have no idea how the -l101 got there.
>> >
>> > not sure if it has anything to do with it, but:
>> >
>> > autom4te.cache/output.0:    HAVE_LIBLTDL=${with_libltdl:-101}
>> > autom4te.cache/output.0:    HAVE_MAGIC=${with_magic:-101}
>> > autom4te.cache/output.0:    HAVE_PNG=${with_png:-101}
>> > autom4te.cache/output.0:    HAVE_MAD=${with_mad:-101}
>> > autom4te.cache/output.0:    HAVE_ID3TAG=${with_id3tag:-101}
>> > autom4te.cache/output.0:    HAVE_LAME=${with_lame:-101}
>> > autom4te.cache/output.0:    HAVE_TWOLAME=${with_twolame:-101}
>> > autom4te.cache/output.0:    HAVE_LIBGSM=${with_libgsm:-101}
>> > autom4te.cache/output.0:    HAVE_OPENCORE_AMRWB=${with_opencore_amrwb:-101}
>> > autom4te.cache/output.0:    HAVE_VO_AMRWBENC=${with_vo_amrwbenc:-101}
>> > autom4te.cache/output.0:    HAVE_OPENCORE_AMRNB=${with_opencore_amrnb:-101}
>> > autom4te.cache/output.0:    HAVE_LIBSNDFILE=${with_libsndfile:-101}
>> 
>> Fixed.
>
> Thank you.
>
>>> [$9 *], m4_argn([8], m4_shift2($@))) dnl OpenBSD m4 can't count
>
> Can you please give a minimal example of an m4 input
> that demonstrates the problem? If something as fundamental
> as counting the number of arguments is broken,
> it needs fixing of course, instead of having
> software have to work around that.

Sure.  Run m4 over the below.  It should print '10' three times.

---CUT---
divert(-1)dnl
changequote([, ])
define([dquote],  [[$@]])
define([argn], [pushdef([_$0], [popdef([_$0])]dquote([$]incr([$1])))_$0($@)])
define([foo], [argn([10], $@)])
define([bar], [argn([9], shift($@))])
define([baz], [argn([8], shift(shift($@)))])
define([numbers], [[1], [2], [3], [4], [5], [6], [7], [8], [9], [10]])
divert(0)dnl
foo(numbers)
bar(numbers)
baz(numbers)
---CUT---

-- 
Måns Rullgård


_______________________________________________
SoX-devel mailing list
SoX-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sox-devel

Reply via email to