yann@693: # Options specific to downloading packages yann@693: yann@693: comment "Downloading" yann@693: yann@693: config FORCE_DOWNLOAD yann@693: bool yann@693: prompt "Force downloads" yann@693: default n yann@693: help yann@693: Force downloading tarballs, even if one already exists. yann@693: yann@693: Usefull if you suspect a tarball to be damaged. yann@693: yann@695: menuconfig USE_LAN_MIRROR yann@693: bool yann@695: prompt "Use LAN mirror" yann@693: default n yann@693: help yann@695: If you have a machine on your LAN that mirrors some of the needed yann@695: tarballs, you can say 'Y' here, and configure adequate values in yann@695: the following options. yann@693: yann@695: Tarballs will be be preferably fetched from the LAN mirror, and if yann@695: not found there, standard places will be searched for. yann@693: yann@695: if USE_LAN_MIRROR yann@695: yann@695: choice yann@695: bool yann@695: prompt "Server type:" yann@695: yann@695: config LAN_MIRROR_HTTP yann@695: bool yann@695: prompt "http" yann@695: yann@695: config LAN_MIRROR_FTP yann@695: bool yann@695: prompt "ftp" yann@695: yann@695: endchoice # Server type yann@695: yann@695: config LAN_MIRROR_SCHEME yann@695: string yann@695: default "http" if LAN_MIRROR_HTTP yann@695: default "ftp" if LAN_MIRROR_FTP yann@695: yann@695: config LAN_MIRROR_HOSTNAME yann@695: string yann@695: prompt "hostname" yann@695: depends on EXPERIMENTAL yann@695: default "localhost" yann@693: help yann@695: Enter here the hostname on your LAN mirror. yann@693: yann@695: config LAN_MIRROR_PATTERNS yann@695: string yann@695: prompt "locations patterns (READ HELP!)" yann@695: default "/downloads /downloads/%pkg /downloads/%pkg/%ver /downloads/%pkg-%ver" yann@695: help yann@695: A space-separated list of patterns to find the tarballs on the yann@695: LAN mirror. yann@693: yann@695: You can use the following 'variables', and they'll get replaced by yann@695: adequate values: yann@695: %pkg : name of the package yann@695: %ver : version of the package yann@693: yann@695: Thus for gcc-4.2.4, %pkg will be replaced with 'gcc', and %ver with yann@695: '4.2.4' (both without quotes). Thus if you entered the default yann@695: pattern: "/downloads/%pkg/ /downloads/%pkg/%ver /downloads/%pkg-%ver" yann@695: the tarball for gcc-4.2.4 would be searched for in: yann@695: /downloads/gcc/ yann@695: /downloads/gcc/4.2.4/ yann@695: /downloads/gcc-4.2.4/ yann@693: yann@695: Of course, if the files on the LAN mirror are really arranged in weird yann@695: ways, entering a list of patterns will be tedious... But see below. yann@695: yann@695: config LAN_MIRROR_LS_R yann@695: bool yann@695: prompt "Use ls-lr.gz et al." yann@695: default n yann@695: help yann@695: If the tarball was not found at any of the above locations, see if the yann@695: server has a ls-lr.gz (or similar) file, and use that file to see if yann@695: the tarball is listed somewhere in that file. yann@695: yann@695: Common file names looked for are: yann@695: ls-lrRt.txt (used at ftp.gnu.org) yann@695: find.txt (ditto) yann@695: ls-lR yann@695: yann@695: endif # USE_LAN_MIRROR yann@695: yann@695: menuconfig USE_PROXY yann@695: bool yann@695: prompt "Proxy settings" yann@695: default n yann@695: help yann@695: Say 'Y' here if you need to use a proxy to connect to the internet. yann@695: yann@695: if USE_PROXY yann@693: yann@693: choice yann@693: bool yann@693: prompt "Proxy type" yann@693: yann@693: config PROXY_TYPE_HTTP yann@693: bool yann@693: prompt "HTTP proxy" yann@693: help yann@693: Use an HTTP proxy to connect to to the internet. yann@693: Only the http and ftp protocols will be tunneled through this yann@693: proxy. yann@693: yann@693: Alternatively to setting this option, you can set and export the yann@693: following variables in your environment: yann@693: ftp_proxy=http://user:passwd@proxy.server:port/ yann@693: http_proxy=http://user:passwd@proxy.server:port/ yann@693: https_proxy=http://user:passwd@proxy.server:port/ yann@693: yann@693: # Haha! Here is an interesting feature/bug of mconf! yann@693: # The following config entries will be shown out-side the yann@693: # choice menu! yann@693: # To add a third entry in the choice menu, add it after the yann@693: # if...endif conditional below, and so on for a fourth entry... yann@693: if PROXY_TYPE_HTTP yann@693: yann@693: config PROXY_HOST yann@693: string yann@693: prompt "hostname/IP" yann@693: yann@693: config PROXY_PORT yann@693: int yann@693: prompt "port" yann@693: default 8080 yann@693: yann@693: config PROXY_USER yann@693: string yann@693: prompt "user name" yann@693: yann@693: config PROXY_PASS yann@693: string yann@693: prompt "password" yann@693: yann@693: endif # USE_HTTP_PROXY yann@693: yann@693: config PROXY_TYPE_SOCKS yann@693: bool yann@696: prompt "SOCKS 4/5 proxy" yann@693: help yann@693: Use a Socks 4/5 proxy to connect to the internet. yann@693: All protocols can get tunneled through this kind of proxy (depending yann@693: on your proxy configuration, some do not allow all protocols, but yann@693: chances are that protocols needed by crosstool-NG are allowed). yann@693: yann@693: Alternatively to setting this option, you can configure tsocks yann@693: system-wide, and set and export the following variable in your yann@693: environment: yann@693: LD_PRELOAD=/path/to/your/tsocks-library.so yann@693: yann@693: This option makes use of the tsocks library. You will have to have tsocks yann@693: installed on your system, of course. yann@693: yann@693: If you think you do not know what tsocks is, or how to configure it, yann@693: chances are that you do not need to set this option. yann@693: yann@693: if PROXY_TYPE_SOCKS yann@693: yann@693: choice yann@693: bool yann@693: prompt "type" yann@693: default PROXY_TYPE_SOCKS_SYS yann@693: yann@693: config PROXY_TYPE_SOCKS_SYS yann@693: bool yann@693: prompt "Use system settings" yann@693: help yann@693: Use that if tsocks is already configured on your system. yann@693: yann@693: config PROXY_TYPE_SOCKS_AUTO yann@693: bool yann@693: prompt "Auto" yann@693: help yann@693: crosstool-NG will attempt to guess what type of SOCKS version yann@693: the proxy speaks. yann@693: yann@693: config PROXY_TYPE_SOCKS_4 yann@693: bool yann@693: prompt "SOCKS 4" yann@693: yann@693: config PROXY_TYPE_SOCKS_5 yann@693: bool yann@693: prompt "SOCKS 5" yann@693: yann@693: endchoice yann@693: yann@693: if ! PROXY_TYPE_SOCKS_SYS yann@693: yann@693: config PROXY_HOST yann@693: string yann@693: prompt "hostname/IP" yann@693: yann@693: config PROXY_PORT yann@693: int yann@693: prompt "port" yann@693: default 1080 yann@693: yann@693: config PROXY_USER yann@693: string yann@693: prompt "user name" yann@693: yann@693: config PROXY_PASS yann@693: string yann@693: prompt "password" yann@693: yann@693: endif # ! PROXY_TYPE_SOCKS_SYS yann@693: yann@693: endif # USE_SOCKS_PROXY yann@693: yann@693: endchoice yann@693: yann@695: endif # Proxy settings yann@695: yann@693: config PROXY_TYPE yann@693: string yann@695: default "none" if ! USE_PROXY yann@693: default "http" if PROXY_TYPE_HTTP yann@693: default "sockssys" if PROXY_TYPE_SOCKS_SYS yann@693: default "socksauto" if PROXY_TYPE_SOCKS_AUTO yann@693: default "socks4" if PROXY_TYPE_SOCKS_4 yann@693: default "socks5" if PROXY_TYPE_SOCKS_5 yann@695: yann@695: config CONNECT_TIMEOUT yann@695: int yann@695: prompt "connection timeout" yann@695: default 10 yann@695: help yann@695: From the curl manual: yann@695: Maximum time in seconds that you allow the connection to the server to take. yann@695: yann@695: The scenario is as follows; yann@695: - some enterprise networks have firewalls that prohibit FTP traffic, while yann@695: still allowing HTTP yann@695: - most download sites have http:// equivalent for the ftp:// URL yann@695: - after this number of seconds, it is considered that the connection could yann@695: not be established, and the next URL in the list is tried, until we reach yann@695: an URL that will go through the firewall, most probably an http:// URL. yann@695: yann@695: If you have a slow network, you'd better set this value higher than the default yann@695: 10s. If you know a firewall is blocking connections, but your network is globally yann@695: fast, you can try to lower this value to jump more quickly to allowed URLs. YMMV. yann@695: yann@695: Note that this value applies equally to wget if you have that installed. yann@695: yann@695: Of course, you'd be better off to use a proxy, as offered by the previous yann@695: option. yann@695: yann@695: config ONLY_DOWNLOAD yann@695: bool yann@695: prompt "Stop after downloading tarballs" yann@695: default n yann@695: help yann@695: Only download the tarballs. Exit once it done. yann@695: yann@695: Usefull to pre-retrieve the tarballs before going off-line.