I'd like to get some opinions of how to best approach 'porting' applications that use external dependency managers such as PHP's composer, Java's maven/gradel, or NodeJS's yarn/npm. Here are some ways I've seen and experimented with:
1) I notice that the ports system support Rust's cargo and am wondering if there was a similar macro for composer, yarn, maven?
2) I've seen some ports 'pre-package' the dependency cache, host it somewhere on Github, then add it to DISTFILES. I'm not really a fan of this approach.
3) One of the approaches I was experimenting with was to add some pre-fetch and post-fetch targets, copy the package.json/compose.sjon file into a sub directory under distfiles, run the dependency manager, and tar it up. Then a post-extract target to put the cache to the expected location.
Ideally the first item on the list would be the approach I'd like to take.
1) I notice that the ports system support Rust's cargo and am wondering if there was a similar macro for composer, yarn, maven?
2) I've seen some ports 'pre-package' the dependency cache, host it somewhere on Github, then add it to DISTFILES. I'm not really a fan of this approach.
3) One of the approaches I was experimenting with was to add some pre-fetch and post-fetch targets, copy the package.json/compose.sjon file into a sub directory under distfiles, run the dependency manager, and tar it up. Then a post-extract target to put the cache to the expected location.
Ideally the first item on the list would be the approach I'd like to take.