Wednesday, October 02, 2019

Re: New/Replacement: Kicad 5.1.4

Hi Tracey,

Tracey Emery writes:
> Attached are seven new ports and one replacement port to get Kicad up to
> 5.1.4, from its current useless, 9-year-old state.

I agree this is worth getting in now. All leaf ports that won't break
anything else, and the kicad we have is useless.

> The OCE port:
>
> OCE is a C++ 3D modeling library. It can be used to develop CAD/CAM softwares
> ,
> for instance FreeCad or IfcOpenShell.
>
> OCE stands for opencascade community edition. This project aims at gathering
> patches/ changes/ improvements from the OCC community. Official OCCT
> documentation and sources are available at http://www.opencascade.org/, you c
> an
> also check their development portal at http://dev.opencascade.org.

Small things to fix:

- since the distfile is an autogenerated GitHub tarball, use GH_*
instead of MASTER_SITES.
- CXXFLAGS+="-I/usr/X11R6/include" should be CONFIGURE_ARGS +=
-DCMAKE_CXX_FLAGS="-I${X11BASE}/include ${CXXFLAGS}".
- seems to be fine with COMPILER = base-clang ports-gcc.
- should be using the x11/tk module and MODTCL_WANTLIB/MODTK_WANTLIB.
and the cmake module automatically handles the ninja dependency.
- I think we usually drop :BOOL from CMake CONFIGURE_ARGS.
- WRKSRC defaults to WRKDIST, no need to set it.
- in general, order of variables should be closer to Makefile.template.

> The libngspice port:
>
> Ngspice can be built as a shared library. This package provides that library.

- ditto for COMPILER.
- if we enable xspice and cider, we should do the same in ngspice.
thus, cmpp and the lib/ngspice/ stuff should be @comment-ed.
can you explain what difference it makes if they're enabled?
- rather than have a build dependency on ngspice, we should @comment
the include files in ngspice and set libnsgpice to conflict with
older versions. (why does upstream do it this way? it's so weird...)

> The other kicad-* ports:
>
> These are the required runtime ports for Kicad 5.

These should be using the kicad.github.io homepages and GH_* instead of
MASTER_SITES. Since all of them contain only architecture-independent
files, they should set PKG_ARCH = * and not use COMPILER.
I would leave ${V} out of COMMENT.

kicad-i18n shouldn't define do-configure/pre-build; just set a build
dependency on gettext-tools and use the cmake module.

Since these ports are all substantially the same, Makefile.inc is a good
way to go.

I guess the existing kicad-library port should just be removed. Some
of its files are in the new ports so they need a @conflict marker in
pkg/PLIST.

> KiCad

The version number goes backwards, so we need to set EPOCH=0.

Should use the official homepage, http://www.kicad-pcb.org/.

Most of those dependencies need to be LIB_DEPENDS, not BUILD_DEPENDS.
Please ensure the output of "make port-lib-depends-check" is clean.


oce is still building and I'm very short on time, so I'd appreciate if
you could revise the oce, libngspice, and kicad ports based on my
comments above.

In the meantime I think my attached kicad-share ports are fine to go in.
Any developers willing to provide an ok?

--
Anthony J. Bentley

No comments:

Post a Comment