rabbitmq / rabbitmq-common

Common library used by rabbitmq-server and rabbitmq-erlang-client
Other
66 stars 112 forks source link

rabbitmq-tools.mk: New `rabbitmq-deps.mk` target #373

Closed dumbbell closed 4 years ago

dumbbell commented 4 years ago

It generates a file called $(PROJECT)-rabbitmq-deps.mk which has a dependency definition line of the form expected by Erlang.mk, for each RabbitMQ component the project depends on.

Therefore the line indicates:

Here is an example for rabbitmq-server:

dep_rabbit_common := git https://github.com/rabbitmq/rabbitmq-common.git d9ccd8d9cdd58310901f318fed676aff59be5afb
dep_rabbitmq_cli := git https://github.com/rabbitmq/rabbitmq-cli.git f6eaae292d27da4ded92b7c1b51a8ddcfefa69c2
dep_rabbitmq_codegen := git https://github.com/rabbitmq/rabbitmq-codegen.git 65da2e86bd65c6b6ecd48478ab092721696bc709
gerhard commented 4 years ago

Looking at this target, I am wondering whether we should leverage query-deps instead: https://github.com/ninenines/erlang.mk/pull/875 . The current rmq-deps.mk implementation looks closer to query-deps than this starting point: https://github.com/rabbitmq/rabbitmq-common/blob/a69166ec023bbbcaf027b01c511f276cf557a9eb/mk/rabbitmq-tools.mk#L39-L43

dumbbell commented 4 years ago

If we use query-deps, we still have to filter the output (to only keep RabbitMQ components) and format the output (if we want to produce a Makefile).

gerhard commented 4 years ago

In which case let's just stick with this make target not use query-deps for this purpose.

If we use query-deps, we still have to filter the output (to only keep RabbitMQ components) and format the output (if we want to produce a Makefile).