Parameter for rule in Makefile

后端 未结 2 1883
傲寒
傲寒 2021-02-13 16:26

I need to make a Makefile, and it should have a run rule. However, the run requires some parameters.

Does anyone have any idea how I can pass arguments in w

相关标签:
2条回答
  • 2021-02-13 16:58

    Make itself doesn't provide passing arguments like for scripts. Usually make is used in the following way: you configure project than run just simple 'make'. Configuring can be done by running shell script 'configure'. This script is the one that you can pass parameters to. For example:

    ./configure param1 param2
    make run
    

    configure script must parse parameters and write them out to config.mk. config.mk must contain the following:

    PARAM1 = val1
    PARAM2 = val2
    

    Your Makefile must include config.mk:

    TOP = .
    include $(TOP)/config.mk
    
    run:
        make compile
        ./scripts/runTrips $(PARAM1) $(PARAM2) $(PLACES) $(OUT) $(VERS)
    

    In your 'configure' script you can also check parameters for correctness and make other checks and calculations.

    0 讨论(0)
  • 2021-02-13 16:59

    When passing parameters to a make command, reference them like you would other internal make variables.

    If your makefile looks like:

    run:
            script $(param1) $(param2)
    

    You can call it with the following syntax:

    $> make run param1=20 param2=30
    

    and make should call the script like:

    script 20 30
    
    0 讨论(0)
提交回复
热议问题