Makefile для создания разных бинарных файлов для разных обработчиков лямбда AWS - PullRequest
0 голосов
/ 06 июля 2019

Проект My Go имеет следующую структуру:

myproject/
  handlers/
    user/
      main.go
    books/
      main.go

, которые являются связкой AWS Lambdas. В моем файле make у меня есть следующая цель:

HANDLERS=$(addsuffix main,$(wildcard handlers/*/))
$(HANDLERS): handlers/%/main: *.go handlers/%/main.go
    cd ./$(dir $@) && GOOS=linux go build -gcflags="${GCFLAGS}" -o /tmp/main

.PHONY: bins
bins: $(HANDLERS)

поэтому моя цель - выполнить make bins и создать следующую структуру каталогов:

bins/
  user/
    main
  books/
    main

как я могу изменить свой Makefile для достижения этой цели? Прямо сейчас я получаю следующую ошибку:

make: *** No rule to make target `*.go', needed by `handlers/user/main'.  Stop.
...