pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Package request: iterated-dynamics



On Sun, Jun 21, 2026 at 11:54:55AM +0100, Richard wrote:
> Iterated Dynamics is a modernized fractal generator descended from
> the classic DOS FRACTINT and its unix port xfractint.

I took a look at packaging it, the intermediate step is in
wip/iterated-dynamics.

I had a couple problems:

- the workflow command from the documentation just gave me an error,
  so I switched to the default pkgsrc method for cmake packages

- it looks for a cpuid library, but we don't have that in pkgsrc

- it looks for boost_endian (which we do have in pkgsrc) using a
  .cmake file (which we don't).

  (I hacked around these two by just not linking against them, which
  will not work, but I don't get that far anyway, see below.)

- It defines a RANDOM_MAX variable that's in conflict with
/usr/include/stdlib.h:#define	RANDOM_MAX	0x7fffffff	/* (((long)1 << 31) - 1) */
  (added a patch for that)

- It uses a RUNTIME_DEPENDENCIES feature that cmake says is not
  supported on NetBSD (patched it out)

- It doesn't like giflib 6.1.3 from pkgsrc:

FAILED: [code=1] libid/CMakeFiles/libid.dir/io/make_mig.cpp.o
/tmp/wip/iterated-dynamics/work/.cwrapper/bin/c++ -DFMT_HEADER_ONLY=1 -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/libid/include -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/helpcom/include -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/config/include -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/cmake-pkgsrc-build/config/include -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/x11/include -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/cmake-pkgsrc-build/include -I/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/algos/include -O2 -g -fstack-clash-protection -pthread -I/usr/pkg/include -I/usr/include -g -std=gnu++17 -Werror -MD -MT libid/CMakeFiles/libid.dir/io/make_mig.cpp.o -MF libid/CMakeFiles/libid.dir/io/make_mig.cpp.o.d -o libid/CMakeFiles/libid.dir/io/make_mig.cpp.o -c /tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/libid/io/make_mig.cpp
/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/libid/io/make_mig.cpp: In member function 'int id::io::OutputGif::spew()':
/tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/libid/io/make_mig.cpp:130:33: error: too few arguments to function 'int EGifSpew(GifFileType*, int*)'
  130 |         m_spew_result = EGifSpew(m_gif);
      |                         ~~~~~~~~^~~~~~~
In file included from /tmp/wip/iterated-dynamics/work/iterated-dynamics-1.4.1/libid/io/make_mig.cpp:9:
/tmp/wip/iterated-dynamics/work/.buildlink/include/gif_lib.h:132:5: note: declared here
  132 | int EGifSpew(GifFileType *GifFile, int *ErrorCode);
      |     ^~~~~~~~

which is when I gave up.

Cheers,
 Thomas


Home | Main Index | Thread Index | Old Index