gpt4 book ai didi

freebsd - 为使用 NPM 而不是 Make 的应用程序创建一个新的 FreeBSD 端口

转载 作者:行者123 更新时间:2023-12-01 11:16:08 27 4
gpt4 key购买 nike

我正在为不使用 Make 的应用程序 ( Cypress ) 创建一个 FreeBSD 端口;相反,它使用 NPM:

npm run binary-build-linux
cd cli
npm run build

我可以看到两个选项:

  1. 将 Makefile 作为补丁添加到工作目录。
  2. 说服上游维护者采用一个仅供此端口使用的 Makefile。

我想知道我是否错过了第三个选项:修改我的端口的 Makefile 以运行一系列 shell 命令来代替 Makefile?阅读搬运工手册后,我看不出有任何方法可以做到这一点。

最佳答案

您不一定需要使用 make 例如,this is port正在使用 godo-build 目标中:(检查 Additional Build Targets, target-OPT-on and target-OPT-off :

do-build:
@cd ${WRKSRC}/src/github.com/${GH_ACCOUNT}/${GH_PROJECT}; \
${SETENV} ${MAKE_ENV} ${BUILD_ENV} GOPATH=${WRKSRC} go build -ldflags \
"-s -w -X main.version=${PORTVERSION}" -o immortal cmd/immortal/main.go;
@cd ${WRKSRC}/src/github.com/${GH_ACCOUNT}/${GH_PROJECT}; \
${SETENV} ${MAKE_ENV} ${BUILD_ENV} GOPATH=${WRKSRC} go build -ldflags \
"-s -w -X main.version=${PORTVERSION}" -o immortalctl cmd/immortalctl/main.go;
@cd ${WRKSRC}/src/github.com/${GH_ACCOUNT}/${GH_PROJECT}; \
${SETENV} ${MAKE_ENV} ${BUILD_ENV} GOPATH=${WRKSRC} go build -ldflags \
"-s -w -X main.version=${PORTVERSION}" -o immortaldir cmd/immortaldir/main.go;

这个其他port using node :

do-build:
@(cd ${WRKSRC}/public ; node ./bundler.js )
@(cd ${WRKSRC} ; go-bindata -o util/bindata.go -pkg util config.json db/migrations/ public/css public/html public/html/projects public/html/projects/repositories public/html/projects/inventory public/html/projects/templates public/html/projects/users public/html/projects/environment public/html/projects/keys public/html/users public/html/auth public/img public/js public/js/services public/js/controllers public/js/controllers/projects public/js/routes public/js/factories public/node_modules public/node_modules/lodash public/node_modules/lodash/fp public/node_modules/async public/node_modules/async/dist public/node_modules/async/internal public/vendor public/vendor/fontawesome public/vendor/fontawesome/less public/vendor/fontawesome/fonts public/vendor/sweetalert public/vendor/moment public/vendor/bootstrap public/vendor/bootstrap/fonts public/vendor/bootstrap/dist public/vendor/bootstrap/dist/css public/vendor/bootstrap/dist/fonts public/vendor/bootstrap/dist/js public/vendor/bootstrap/less public/vendor/bootstrap/less/mixins public/vendor/angular-loading-bar )
@(cd ${WRKSRC}/cli ; ${SETENV} ${MAKE_ENV} GOPATH=${WRKSRC} go build -o semaphore ./... )

两个端口都使用 BUILD_DEPENDS(检查 Dependencies in the porter handbook)

BUILD_DEPENDS=  ${LOCALBASE}/bin/go:lang/go \
${LOCALBASE}/bin/go-bindata:devel/go-bindata \
npm>=0:www/npm

关于freebsd - 为使用 NPM 而不是 Make 的应用程序创建一个新的 FreeBSD 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50918450/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com