https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=240006
Stefan Esser <s...@freebsd.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |Works As Intended Status|Open |Closed --- Comment #8 from Stefan Esser <s...@freebsd.org> --- Sorry for the late reply - apparently I do no longer get a notification by mail when a PR is assigned to me. The information given by Walter Schwarzenfeld in Comment 7 is correct: Some ports have dependencies that are declared as run dependencies, but which are in fact required to install a port. This is possible in the "plain" ports system, since it implements recursion into run dependencies before installing the port being requested. I.e. the building and installation of run dependencies is injected between building and installing the requested port. I consider this an artefact of the implementation of the ports system in "make", which cannot provide a different order: when the requested port has been installed the trigger for the installation of run dependencies is lost - if you interrupt the process at that time, the requested port has been installed and the missing run dependencies will be ignored. Portmaster processes always just one port from begin to end, it knows to update or install build dependencies before the port needing them, run dependencies afterwards, and it will detect missing run dependencies even if the build process is interrupted between installation of the port and its run dependencies. A different treatment of run dependencies in portmaster is possible, but will lead to dependency cycles, since run dependencies may themselves depend on the port being worked being installed. If all run dependencies were treated like build dependencies, then these cycles will prevent building of either of them. Those ports that need run dependencies being available before the port depending on them has been installed have to declare them as build dependencies. If they are required for the build process to finish besides being run dependencies, then they need to be declared as both build and run dependencies. That the plain ports system does not require them to be declared as build dependencies is caused by the tool used (make) which does not support a different order than is implemented, but that does not set a precedent for portmaster, IMHO. Therefore, I'm going to close this PR - the fix is in the individual port that lacks a RUN_DEPENDS declaration. -- You are receiving this mail because: You are on the CC list for the bug. _______________________________________________ freebsd-ruby@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-ruby To unsubscribe, send any mail to "freebsd-ruby-unsubscr...@freebsd.org"