# GMP options

choice
    bool
    prompt "GMP version"
# Don't remove next line
# CT_INSERT_VERSION_BELOW

config GMP_V_5_1_1
    bool
    prompt "5.1.1"

config GMP_V_5_0_2
    bool
    prompt "5.0.2"

config GMP_V_5_0_1
    bool
    prompt "5.0.1"

config GMP_V_4_3_2
    bool
    prompt "4.3.2"

config GMP_V_4_3_1
    bool
    prompt "4.3.1"

config GMP_V_4_3_0
    bool
    prompt "4.3.0"

endchoice

config GMP_VERSION
    string
# Don't remove next line
# CT_INSERT_VERSION_STRING_BELOW
    default "5.1.1" if GMP_V_5_1_1
    default "5.0.2" if GMP_V_5_0_2
    default "5.0.1" if GMP_V_5_0_1
    default "4.3.2" if GMP_V_4_3_2
    default "4.3.1" if GMP_V_4_3_1
    default "4.3.0" if GMP_V_4_3_0
